Страница 1 из 1
Поиск по таблице
Добавлено: 27 май 2008, 14:39
SirSnake
Добрый день. Сразу к вопросу)
Есть таблица IB необходимо средствами Delphi 7 организовать поиск по строке, или даже по всей таблице, как это реализовано в ацессе.
Например строка в таблице "прива привет драсте еще что то"
Строка поиска "привет"
Оно должно найти все строки где есть слово "привет", если есть какая то реализация фильтром, то можно и фильтром сделать.
Заранее спасибо.
Добавлено: 27 май 2008, 16:26
kdv
like, containing. это букварь SQL.
как это реализовано в ацессе.
да, конечно. тут все кроме IB/FB еще и в Аксесе работают и днем и ночью.
Добавлено: 27 май 2008, 17:31
xvv
Здесь все стебаются

select <val>[,val[...]]
from <table>
where <field> like '%привет%'
если регист неважен - то upper (есть такая функция).
А вообще смотри основы SQL. Ребята правы, что стебаются.
Добавлено: 27 май 2008, 17:48
kdv
Здесь все стебаются
ни боже мой. я разве что про аксесс.
Добавлено: 27 май 2008, 19:18
WildSery
xvv писал(а):Здесь все стебаются
Нет, здесь неправильные советы дают.
Читать CONTAINING, в том числе тебе.
Добавлено: 28 май 2008, 04:10
Antoxa
xvv писал(а):where <field> like '%привет%'
если регист неважен - то upper (есть такая функция).
А вообще смотри основы SQL. Ребята правы, что стебаются.
А если содержимое на 1251, то вместе с upper надо еще и это учитывать
Добавлено: 28 май 2008, 12:41
WildSery
Antoxa писал(а):А если содержимое на 1251, то вместе с upper надо еще и это учитывать
Во-первых, не "если" а так и есть, автор ясно пример привёл.
Во-вторых, твой совет ограничен старыми версиями сервера.
Добавлено: 28 май 2008, 15:20
xvv
WildSery писал(а):xvv писал(а):Здесь все стебаются
Нет, здесь неправильные советы дают.
Читать CONTAINING, в том числе тебе.
Первое, что сделал при проектировании FB - понял как НЕ писать его к месту и не к месту. Слишком лениво столько писать, да ещё в каждом запросе где нужен like. Да и всё равно забуду - поддержка ANSI SQL рулит.
ЗЫ: в общем случае ты прав.