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

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

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

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

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

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

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

Код: 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
оператор LIKE в SQL запросе
    #33077412
GG2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
GG2
Гость
Код: 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
оператор LIKE в SQL запросе
    #33077897
AndreEj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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
оператор LIKE в SQL запросе
    #33077905
AndreEj
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BerkutПриводите, например, все к нижнему регистру.

Функция lower() (см. мануал по вашей СУБД).
Спасибо Вы првы проблема в одном как мне получить это-т самый lower или upper после WHERE
...
Рейтинг: 0 / 0
оператор LIKE в SQL запросе
    #33080540
Фотография Sash*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какая база у тебя?
для многих КС будет так
Код: 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
оператор LIKE в SQL запросе
    #33080802
Фотография Berkut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreEj BerkutПриводите, например, все к нижнему регистру.

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

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

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

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

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

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

Код: 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
оператор LIKE в SQL запросе
    #33141667
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, вас не смущает, что подобный запрос вряд ли будет сколько-нибудь быстрым при большом количестве записей?
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / оператор LIKE в SQL запросе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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