Найти запись в бд по строковому полю без учета регистра

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
MadHarper
Сообщения: 58
Зарегистрирован: 2016.05.29, 22:30

Найти запись в бд по строковому полю без учета регистра

Сообщение MadHarper »

Кто знает, как запросом ActiveRecord (не Like!) найти запись на точное совпадение строкового поля, но без учета регистра?
MadHarper
Сообщения: 58
Зарегистрирован: 2016.05.29, 22:30

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение MadHarper »

Без ножа зарезал.
Еще раз. Нужно точное совпадение. Не Like. Но без учета регистра.
someweb
Сообщения: 552
Зарегистрирован: 2017.03.09, 10:12

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение someweb »

->where(['like', 'field_name', $searchString, false]);
Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа. Роберт Шекли.
Аватара пользователя
SiZE
Сообщения: 2817
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение SiZE »

MadHarper писал(а): 2018.03.27, 16:00 Без ножа зарезал.
Еще раз. Нужно точное совпадение. Не Like. Но без учета регистра.
Попробуйте в mysql:

Код: Выделить всё

SELECT 'qWe' LIKE 'qwe';
SELECT 'qWer' LIKE 'qwe';
MadHarper
Сообщения: 58
Зарегистрирован: 2016.05.29, 22:30

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение MadHarper »

Я твой намек понял. Не cтавить %.
Но увы, мне нужно выбрать модели, поэтому речь идет об AR. И конструкция (['ilike', 'name', $this->name]) не канает.
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение maleks »

MadHarper писал(а): 2018.03.27, 16:34 Но увы, мне нужно выбрать модели, поэтому речь идет об AR. И конструкция (['ilike', 'name', $this->name]) не канает.

Код: Выделить всё

ArClass::find()->where(...)->one()
someweb
Сообщения: 552
Зарегистрирован: 2017.03.09, 10:12

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение someweb »

Конструкция должна быть ['like', 'name', $this->name, false], а не ['like', 'name', $this->name]!
Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа. Роберт Шекли.
MadHarper
Сообщения: 58
Зарегистрирован: 2016.05.29, 22:30

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение MadHarper »

someweb писал(а): 2018.03.27, 16:44 Конструкция должна быть ['like', 'name', $this->name, false], а не ['like', 'name', $this->name]!
Спасибо, добрый человек!
Аватара пользователя
SiZE
Сообщения: 2817
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Найти запись в бд по строковому полю без учета регистра

Сообщение SiZE »

MadHarper писал(а): 2018.03.27, 16:34 Но увы, мне нужно выбрать модели, поэтому речь идет об AR
AR это всего лишь обертка над SQL в данном случае. Все что может может SQL можно повторить в AR.
Ответить