Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.221.85.100] |
|
Данный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ. |
Сообщ.
#1
,
|
|
|
Мне нужно обрать всё по условию.
Пример: Поле "блюдо" В этой колонке - Салат Европейский - Салат Гамбургский - Салат домашний Мне нужно выбрать всё где есть слово 'салат'. Вот как я это делаю. db.OpenRecordset("SELECT Klient.id, Klient.блюдо FROM Klient WHERE (((Klient.блюдо) LIKE '%салат%'))") - не работает Подскажите как правильно! |
Сообщ.
#2
,
|
|
|
Во-первых, если вы действительно используете кириллицу в названих таблиц, то лучше прекратить это делать.
Во-вторых, если не ошибаюсь, то по-умолчанию, то что записано в параметр LIKE - чувствительно к регистру. Т.е. лучше попробовать '%алат%' В третьих, это точно MySQL? |
Сообщ.
#3
,
|
|
|
Цитата gnumus @ 10.01.05, 09:07 LIKE - чувствительно к регистру Предикат Like действительно чувствителен к регистру. WHERE UPPER(Klient.блюдо) LIKE UPPER('салат%') |
Сообщ.
#4
,
|
|
|
Цитата Bas @ 10.01.05, 10:23 Предикат Like действительно чувствителен к регистру. неправда это. Неважен ему регистр. В MySQL по крайней мере. Скорей всего у автора проблема с кодировкой. |
Сообщ.
#5
,
|
|
|
Я разобрался нужно вместо '%салат%' ставить '*салат*', так работает
|
Сообщ.
#6
,
|
|
|
Олег, очень странно, у в запросах всегда LIKE вида '%...%'
|
Сообщ.
#7
,
|
|
|
Олег, должно быть %
see manual: http://www.mysql.ru/docs/man/String_comparison_functions.html |