Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / оператор LIKE в SQL запросе / 12 сообщений из 12, страница 1 из 1
20.05.2005, 12:30
    #33076745
AndreEj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
Запрос работает нормально кроме одного момента....

Like оказался Чувствительнык к символам (большие-маленькие)

Как сделать что бы при вводе на одном регистре нашлись запись с буквами (не со всем а в произвольном порядке) и в другом регистре
________________
ВОТ и ВСЕ
...
Рейтинг: 0 / 0
20.05.2005, 13:01
    #33076854
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
Приводите, например, все к нижнему регистру.

Функция lower() (см. мануал по вашей СУБД).
...
Рейтинг: 0 / 0
20.05.2005, 13:32
    #33076958
AndreEj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
мне не нужно переводить всю строку....

Всю строку понятно как перевести, вопрос можноли убрать чувствительность.

Или придется считать кол-во символов в переменной и частично ее переводить
А при условии что это например какойнить типа НИИРоснирХ?

________________
ВОТ и ВСЕ
...
Рейтинг: 0 / 0
20.05.2005, 14:46
    #33077285
AndreEj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
Сделано вроде как правильно, а криво :(

Код: plaintext
1.
SELECT NumbDprt, Numb_Client, Name_Client, UCase(Name_Client) AS Name_Client_u FROM client_dbt WHERE Name_Client_u Like '%"&Filters&"%' ORDER BY Numb_Client

То есть не работает, в чем ошибка?
________________
ВОТ и ВСЕ
...
Рейтинг: 0 / 0
20.05.2005, 15:19
    #33077412
GG2
GG2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
Код: plaintext
1.
SELECT NumbDprt, Numb_Client, Name_Client, UCase(Name_Client) AS Name_Client_u FROM client_dbt WHERE UCase(Name_Client) Like '%FILTERS%' ORDER BY Numb_Client
...
Рейтинг: 0 / 0
20.05.2005, 18:05
    #33077897
AndreEj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
GG2
Код: plaintext
1.
2.
3.
SELECT NumbDprt, Numb_Client, Name_Client, 
UCase(Name_Client) AS Name_Client_u FROM client_dbt 
WHERE UCase(Name_Client) Like '%FILTERS%' ORDER BY Numb_Client


После WHERE UCASE почему то не работает
а какой смысл делать мне это до WHERE???
...
Рейтинг: 0 / 0
20.05.2005, 18:10
    #33077905
AndreEj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
BerkutПриводите, например, все к нижнему регистру.

Функция lower() (см. мануал по вашей СУБД).
Спасибо Вы првы проблема в одном как мне получить это-т самый lower или upper после WHERE
...
Рейтинг: 0 / 0
23.05.2005, 16:54
    #33080540
Sash*
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
какая база у тебя?
для многих КС будет так
Код: plaintext
SELECT NumbDprt, Numb_Client, Name_Client, UCase(Name_Client) AS Name_Client_u FROM client_dbt WHERE UPPER(Name_Client) Like '%FILTERS%' ORDER BY Numb_Client
FILTERS ПРИВОДИШЬ К БОЛЬШИМ БУКВАМ НА КЛИЕНТЕ
...
Рейтинг: 0 / 0
23.05.2005, 18:47
    #33080802
Berkut
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
AndreEj BerkutПриводите, например, все к нижнему регистру.

Функция lower() (см. мануал по вашей СУБД).
Спасибо Вы првы проблема в одном как мне получить это-т самый lower или upper после WHERE

Код: plaintext
1.
2.
3.
select * 
from tablename
where lower(fieldname) LIKE lower('%pattern%');

2 Sash*
> FILTERS ПРИВОДИШЬ К БОЛЬШИМ БУКВАМ НА КЛИЕНТЕ

А зачем?
...
Рейтинг: 0 / 0
28.06.2005, 13:59
    #33138357
AndreEj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
Суть такая когда я привожу все в ловер или аппер (база использует cp866, соответвенно вывод производим с translate)
И когда пытаемся делать Lower или Upper то получаем ерунду (в INPUT получаем в другой ведь кодировке)

Суть вопроса как привести то что ввдится на клиенте в этуже кодовую страницу

________________
ВОТ и ВСЕ
...
Рейтинг: 0 / 0
28.06.2005, 16:44
    #33138823
AndreEj
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
Сорри добавление: для правильного отображения быза приходся делать так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=cp866">
...
    Filters=Request.Form("test")
'    Filters = UCase(Filters) заремлено

    Service1="SELECT NumbDprt, Numb_Client, Name_Client FROM client_dbt WHERE Name_Client Like '%"&Filters&"%' ORDER BY Numb_Client"


и еще

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=cp866">
...
    Filters=Request.Form("test")
'    Filters = UCase(Filters) заремлено

    Service1="SELECT NumbDprt, Numb_Client, Name_Client FROM client_dbt WHERE UCase(Name_Client) Like UCase('%"&Filters&"%') ORDER BY Numb_Client"


Ошибка, плюс к этому при подстановки напримерр ООО я вжу что он передает в переменную символы Registert Trade Mark

А при выводе вот такой конструкции:
Код: plaintext
1.
    Service1="SELECT NumbDprt, Numb_Client, Name_Client, UCase(Name_Client) As Name_Client_U FROM client_dbt WHERE Name_Client Like '%"&Filters&"%' ORDER BY Numb_Client"

Кодировка летит в трантарары ....

Помогите побороть плз

________________
ВОТ и ВСЕ
...
Рейтинг: 0 / 0
30.06.2005, 01:17
    #33141667
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
оператор LIKE в SQL запросе
Кстати, вас не смущает, что подобный запрос вряд ли будет сколько-нибудь быстрым при большом количестве записей?
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / оператор LIKE в SQL запросе / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]