Вниз
Скачать: CL | DM;

запрос на большую базу   Найти похожие ветки 

 
KonstVD   (2002-10-28 15:43) [0]

Есть таблица ~100000 записей. Допустим, есть поля - фамилия, имя, отчество и место работы длиной, скажем, по 25 символов. Плюс тут же еще куча информации (адрес, возраст и т.д.).
Результат запроса (только ФИО) выводится на dbgrid. Тут же Edit, по изменению содержимого которого нужно сразу искать человека в dbgrid и соответственно указатель на него. По желанию выводить все данные по найденному. Как можно сделать, чтобы эта система работала с более или менее приличной скоростью?


 
stone ©   (2002-10-28 16:23) [1]

Выводить все записи, а потом в них копаться - это абсурд.
Пользователь все равно не пролистает их все. Делай запрос, используя LIKE, выбирая записи в соответствии с указанной в едите частью фамилии


 
MVF   (2002-10-28 16:40) [2]

Такую базу надо бы проиндексировать причем тэги должны полностью совпадать с условиями в запросах. Например: индекс по полю FIO, в запросе в условиях писать FIO like ...


 
NickBat ©   (2002-10-28 17:18) [3]

Кажеться LIKE работает не по индексам, там ведь можно выбрать по вхождению. Но направление верное.


 
Darts   (2002-10-28 17:42) [4]

Проще в запрос включить и ID из таблицы. ID можно скрыть. Далее, при двойном щелчке по строке запроса можно узнать ID и передать в качестве параметра в поиск в первой таблице. Естественно, первая таблица должна проинндексирована по ID. Причем будем редактировать именно первую таблицу, а не запрос, что очень удобно.


 
KonstVD   (2002-10-29 07:46) [5]

Использовал я like... В данной задаче выходит по 500-1000 штук в запросе. Если фамилия, например начинается Ива... и т.д. то соответственно таких вылезает куча. А нельзя ли ограничить количество выбираемых запросом строк именно по заданному количеству?


 
MVF   (2002-10-30 09:29) [6]

Какие могут быть ограничения на количество строк?!
Ведь при этом меняется суть поиска.
Если уж на то пошло, так это добавить дополнительные условия выборки. Например условия для других полей (работа и т.д.)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
3-59011
cypher
2002-10-28 22:54
2002.11.18
Проблема с MS SQL Server 2000


3-58995
Шурик Ш
2002-10-28 15:06
2002.11.18
Опять проблемы с кодировкой


14-59421
Esipenko
2002-10-31 12:10
2002.11.18
Пароль на вход в Win98


1-59137
Dmittry
2002-11-07 19:18
2002.11.18
Как сделать плавный переход одного цвета в другой?


3-59058
max2057
2002-10-30 13:53
2002.11.18
Репликация Oracle ов




   Наверх