|
Простой вопрос
|
|||
---|---|---|---|
#18+
Господа! Не подскажители мне, каким образом я могу наииболее быстрым методом в Fox'e произвести поиск подстроки в полях таблицы , скажем в 2 текстовых полях. Очень хочется это сделать Seek'ом, но тогда как должно выгляить индексное выражение. Буду премного благодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2003, 15:23 |
|
Простой вопрос
|
|||
---|---|---|---|
#18+
Если подстрока начинается с начала строки, то просто индекс по полю и SET EXACT OFF, в противном случае LOCATE FOR SUBSTR или SELECT LIKE ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2003, 15:39 |
|
Простой вопрос
|
|||
---|---|---|---|
#18+
Если речь идет о первых символах строки, то так прямо и используешь SEEK SET EXACT OFF && это значение по умолчанию SEEK('FirstChar') Если же искомый фрагмент может быть в любом месте строки, то только LOCATE (ну или Select-SQL с LIKE) и этот поиск будет очень медленным Варианты: LOCATE FOR 'Что ищем' $ 'Где ищем' LOCATE FOR AT('Что ищем','Где ищем')>0 LOCATE FOR LIKE('*Что ищем*','Где ищем') SELECT * FROM MyTab WHERE 'Где ищем' LIKE '%Что ищем%' ... |
|||
:
Нравится:
Не нравится:
|
|||
11.07.2003, 15:40 |
|
|
start [/forum/topic.php?fid=41&msg=32205838&tid=1598140]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 143ms |
0 / 0 |