Задать вопрос
@MikUrrey

Drupal 8: как выполнить ORDER BY FIELD в конструкторе запроса?

Есть запрос в таксономию, нужно отсортировать результаты так, чтобы определенные оказались внизу.
В MySQL это было бы так: ORDER BY FIELD(name, "TEST") DESC.
Как добавить такое в нижеследующий код?
use Drupal\Core\Database\Database;
///////
$connection = Database::getConnection();
$query = $connection->select('taxonomy_term_field_data', 'data');
$query->fields('data', ['tid', 'name'])
      ->condition('vid', 'themes')
      ->orderBy('name')
      ->execute();
  • Вопрос задан
  • 64 просмотра
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Skillbox
    PHP-разработчик. Базовый уровень
    3 месяца
    Далее
Решения вопроса 1
andead
@andead
друпал девелопер, фрилансер
$alias = $query->addExpression("FIELD(name, 'TEST')", 'order_field');
$query->orderBy($alias, 'DESC');
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы