Как вы строите LIKE
условие в db_select()
запросе?
Я знаю, как сделать это с помощью db_query()
вызова API, но есть ли специальный синтаксис / метод для этого db_select()
?
Как вы строите LIKE
условие в db_select()
запросе?
Я знаю, как сделать это с помощью db_query()
вызова API, но есть ли специальный синтаксис / метод для этого db_select()
?
db_query
в качестве заполнителя аргумента, вы также можете передать в качестве аргумента...Query::condition
. Вы не найдете документацию для каждого отдельного оператора для каждого типа запроса, так как это не имеет смысла делать. Все это проходит через PDO в конце дня, еслиdb_like
правильно подготавливает переменнуюdb_query
, то по определению она правильно подготавливает эту переменную дляdb_select
Ответы:
После изучения Drupal Documentation было найдено решение на странице документации по API db_like и на странице документации по обработчику условий .
Например
Условие для использования в качестве запроса
источник
db_like()
необходимо для правильного экранирования аргумента, и (2) вам необходимо явно добавить символы подстановки. Он также будет использовать параметры сортировки по умолчанию для базы данных, и я не думаю, что есть какой-либо способ указать другой.Вы также можете использовать Drupal \ Core \ Database \ Database при создании запроса "LIKE". Это альтернативный синтаксис Drupal 8, поскольку db_select () устарела.
Или добавить кратные с запросом ИЛИ.
источник
Для использования «как» в
db_select
том, как показано ниже, и работал для меня ...Здесь точное значение в ROW1 - «testvalue@xmail.com», и, используя
LIKE
условие,db_select
я получил вывод «testvalue@xmail.com».источник
это работает в Drupal8 версии 1
Версия 2
источник