Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.06.14;
Скачать: [xml.tar.bz2];

Вниз

Как поставить ИГНОРКЕЙС в запрос?   Найти похожие ветки 

 
Urvin   (2005-05-04 17:24) [0]

Мне надо создать что-то такое...
В смысле это уже работаит:
SELECT CCLIENT,CPHONE,CSOURCE FROM CLIENTS WHERE CCLIENT="Ляляля"

Надо на этот Ляляля поставить игноркейс...
Типа, чтобы Если в базе есть запись "ЧМОПОГАНОЕ", а я ввел в запрос "чмопоганое", то запись все равно вывелась бы...


 
evvcom ©   (2005-05-04 17:31) [1]

... WHERE UpperCase(CCLIENT) = UpperCase(:MyParam)


 
Urvin   (2005-05-04 17:35) [2]

Пасиба!


 
Johnmen ©   (2005-05-04 17:38) [3]

Прикольно...
Дан неверный ответ. А автор, не удосужившись заглянуть в хелп (или просто попробовать), уже пищит от радости...:(


 
Urvin   (2005-05-04 17:41) [4]

Уже отпищал...
Унноун фанкшин 8(
Был бы хелп-не спрашивал...


 
Urvin   (2005-05-04 17:42) [5]

Лучше бы ответил...!


 
Johnmen ©   (2005-05-04 17:43) [6]

Тогда иди в фак на ibase.ru
http://www.ibase.ru/devinfo/ibrusfaq.htm
и далее везде...


 
Rule ©   (2005-05-04 17:52) [7]

Johnmen ©   (04.05.05 17:43) [6]
хотел ответить, но присоединусю к ссылке, пусть человек походит, позаглядывает, и найдет ответы на очень многие вопросы (если захочет)


 
Johnmen ©   (2005-05-04 17:56) [8]

>Rule ©   (04.05.05 17:52) [7]

Ему достаточно внимательно почитать по указанной ссылке для полного решения своей текущей "проблемы".
Для остальных вопросов - естественно, найдет, если походит. Если захочет...:)


 
Anatoly Podgoretsky ©   (2005-05-04 18:43) [9]

Я тебя поцелую, если захочешь (с) Тетя


 
evvcom ©   (2005-05-05 08:25) [10]


> Johnmen ©   (04.05.05 17:38) [3]
> Прикольно...
> Дан неверный ответ

У меня нет Файербёрд, поэтому я давал не ответ, а идею. А уж по хелпу вопрошающий мог бы и самостоятельно полазить в поисках аналогичной функции.


 
Anatoly Podgoretsky ©   (2005-05-05 08:57) [11]

evvcom ©   (05.05.05 08:25) [10]
А что у тебя есть, чтобы ни было я уверен, что это UPPER


 
sniknik ©   (2005-05-05 09:03) [12]

> У меня нет Файербёрд, поэтому я давал не ответ, а идею.
ну тогда пиши это, а то получается ввод в заблуждение... намеренный.
подписал бы в
evvcom ©   (04.05.05 17:31) [1]
еше
это запрос из ..., ищи аналогичную функцию (по действию) в firebird-е.
и все бы соответствовало...

и кстати даже с учетом функции, идея немного "подпорчена" (имхо)  
> ... WHERE UpperCase(CCLIENT) = UpperCase(:MyParam)
зачем вычислять параметр на сервере, не лучше ему уже в верхнем регистре значение дать? и запрос
... WHERE UpperCase(CCLIENT) = :MyParam

сдесь то ладно, вычисление одноразовое, а понадобится сделать условие с параметром посложнее и начнет оно на каждую запись вычислятся... лишняя нагрузка.
чтото вроде
... WHERE UpperCase(CCLIENT) = UpperCase(:MyParam)+IDCLIENT
или
... WHERE UpperCase(CCLIENT) = UpperCase(:MyParam || IDCLIENT)
(не уверен что это тоже не "одноразовое", но смысл ;о)


 
evvcom ©   (2005-05-05 09:22) [13]


> это запрос из ..., ищи аналогичную функцию (по действию)
> в firebird-е.

Согласен, поленился так разжевывать, надеясь на понимание.

> зачем вычислять параметр на сервере, не лучше ему уже в
> верхнем регистре значение дать?

Чем лучше? На сервере надежнее и делается в одном месте. А на клиенте придется делать каждый раз и помнить при каждом вызове, что серверная процедура чувствительна к регистру.
А если

> чтото вроде
> ... WHERE UpperCase(CCLIENT) = UpperCase(:MyParam)+IDCLIENT

то
:MyParam := Upper(:MyParam); -- для ORACLE или SELECT :MyParam = Upper(:MyParam) (так вроде для MSSQL)
а потом уже ... WHERE Upper(CCLIENT) = :MyParam + (или ||) IDCLIENT


 
sniknik ©   (2005-05-05 11:18) [14]

> так вроде для MSSQL
т.е. добавить переменную и вычислить ее из параметра прежде чем использовать в запросе?
тогда уж
DECLARE @MyParam VarChar(50)
SET @MyParam = Upper(:MyParam)
и потом
... WHERE Upper(CCLIENT) = @MyParam + IDCLIENT
так да?

но извини твое пояснение это "финт ушами", ты "вывернулся" из под фаребирда который пакеты команд не позволяет в запросе (вроде бы, там вроде так только в процедурах можно, а не при посылке запроса про что вопрос (а не про процедуру))
и привел пример на MSSQL/Oracle которые это могут.
а давай лучше возьмем аксесс? у которого в принципе все в одну команду. будеш мирится с вычислениями на каждой строке? или всетаки лучше помнить?

p.s. но вообщето мне плевать что твои запросы будут чуть медленнее моих, так и написал "имхо" что означает "по моему мнению", которое вовсе не обязано совпадать с твоим.


 
evvcom ©   (2005-05-05 12:56) [15]


> а давай лучше возьмем аксесс? у которого в принципе все
> в одну команду. будеш мирится с вычислениями на каждой строке?
> или всетаки лучше помнить?

Да, тогда лучше помнить. Все зависит от сервера БД и можно долго дискутировать на тему "где и как". В [1] я навскидку написал имя нужной функции, и Мастера поехали глумиться. Не так летишь, не так свистишь. Хотя главное - направление было дано верно.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.06.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.042 c
1-1117086896
Артем К.
2005-05-26 09:54
2005.06.14
Удаление компонента в Runtime при нажатии на кнопку Delete


1-1117437824
Rentgen
2005-05-30 11:23
2005.06.14
Как раскрыть весь TreeView?


4-1113987033
LineSoft
2005-04-20 12:50
2005.06.14
Управление принтерами


14-1117086751
leonidus
2005-05-26 09:52
2005.06.14
Посоветуйте бесплатный компонентик для обновления программы


3-1115205048
seregka
2005-05-04 15:10
2005.06.14
добавление записей в серверную базу MySQL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский