Текущий архив: 2002.09.09;
Скачать: CL | DM;
ВнизSql и независимость от регистра символов Найти похожие ветки
← →
Igr (2002-08-19 11:12) [0]Есть некоторое символьное поле. Соответственно данные там могут быть как в верхнем регистре так и нижнем. Поиск осуществляется примерно так:
SELECT * FROM nnn WHERE fff like "поиск%"
Однако такой поиск позволяет искать либо в нижнем, либо в верхнем если добавить UPPER.
Можно ли каким-либо образом не сильно усложняя запрос осуществить поиск в обоих регистрах?
Может есть какая-то функция, которая приводит к одному регистру и ключ поиска и выражение?
СПАСИБО.
← →
Johnmen (2002-08-19 11:18) [1]Ты сам уже ответил на свой вопрос...:)
SELECT * FROM nnn WHERE UPPER(fff) like UPPER("поиск%")
← →
Igr (2002-08-19 11:22) [2]Н-дааа. Тормоза включил на всю катушку... :)
СПАСИБО.
← →
Alexandr (2002-08-19 11:22) [3]тут главное чтобы индекс поддерживал регистронезависимоть, а то он не будет использоваться. :)
И именно эта проблема чаще всего имеет решающее значение, заставляющее создавать еще одно поле, в которое записывать тоже, но одинаковым регистром букв и like делать уже по этому полю.
← →
Igr (2002-08-19 12:15) [4]А если поле не символьное, а МЕМО, то как быть? В этом случае UPPER(FIELD_MEMO) дает ошибку несовместимости типов. Как их можно привести друг к другу?
← →
Alexandr (2002-08-19 12:19) [5]колись, какая у тебя СУБД
← →
Igr (2002-08-19 12:37) [6]DBase ;)
← →
Anatoly Podgoretsky (2002-08-19 12:44) [7]Так забудь про сравнение с Мемо полем, а так и для большинства других баз
← →
Igr (2002-08-19 12:52) [8]То есть если я правильно понял это особенность DBase (невозможность работы с МЕМО полем) и запрос никоем образом не отработает? Так. Остается тогда в лоб перебором и приведением к строке?
Страницы: 1 вся ветка
Текущий архив: 2002.09.09;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.006 c