|
|
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
Как программно найти в содержимом поля, пусть "11Б", если неизвестно с какой позиции и что между ними. В мастере форм (набор кнопок) при FIND появляется contains , а как аналогично организовать с LOCA, FILTR, SELE Или что можно сделать подругому? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 22:38 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
В таком случае лучше всего использовать регулярные выражения. В поставку входит фундаментальный класс _regexp. Ничего сложного или хитрого. Никогда не говори "невозможно", просто попробуй сделать иначе! JS (at FoxClub) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 22:57 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
Я бы делал так : Create Table TestTable (TestFild C(100)) Insert into TestTable values ("12313111Bwdwfwf") Insert into TestTable values ("12313qwd11Bwdwfqdwf") Insert into TestTable values ("12dasd313qwd11Bwdwfqasddwf") Select TestFild from TestTable where TestFild like "%11B% " ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 01:30 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
M.Alex Спасибо, то что надо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 07:54 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
BMJКак программно найти в содержимом поля, пусть "11Б", если неизвестно с какой позиции и что между ними. В мастере форм (набор кнопок) при FIND появляется contains , а как аналогично организовать с LOCA, FILTR, SELE Или что можно сделать подругому? Можно и Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 09:53 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
Спасибо за проблему выбора! (шутка). Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 20:46 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
Варианты поиска в подстроке для команды LOCATE FOR Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Все эти функции, кроме ATC(), чувствительны к регистру. Т.е. маленькая буква не равна большой. Если при использовании одной из этих функций необходимо уравнять большие и маленькие буквы, то следует использовать функции преобразования регистра UPPER() или LOWER(). Использованная в данном случае функция LIKE() это не то же самое, что опция LIKE в команде Selec-SQL. У них разный синтаксис. Следует иметь в виду, что какой-бы способ Вы ни испольовали поиск будет осуществляться очень медленно, поскольку он заведомо НЕ оптимизируемый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 23:19 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
ВладимирМ, не уверен что не оптимизируем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 23:26 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
M.AlexВладимирМ, не уверен что не оптимизируем. "Штатно" - не оптимизируются, поскольку в FoxPro основа оптимизиации - это индекс. Поиск в индексе может быть либо по первым символам, либо по всему значению ключа. Во всех остальных случаях оптимизиции нет. Если бы задача стояла так: найти значение, у которые первые символы равны указанному выражению, вот тогда оптимизация возможна. Это был бы поиск такими командами Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 23:33 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
ВладимирМ, не хочеться верить в плохое ) как-то в памяти оно же рулит. Не верю, вернее не хочу верить, что создатели фокса так лажают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2006, 23:50 |
|
||
|
Поиск в содержимом поля
|
|||
|---|---|---|---|
|
#18+
M.AlexВладимирМ, не хочеться верить в плохое ) как-то в памяти оно же рулит. Не верю, вернее не хочу верить, что создатели фокса так лажают. Причем тут создатели FOX!!! Быстрый (оптимальный) поиск основан на использовании индексов. В T-SQL говорят, что поиск по LIKE, когда шаблон начинается с wildcard "_" или "%" "УБИВАЕТ"! индекс. В этом случае не возможно использовать поиск по сбалансированному дереву (B-Tree), т.е. индекс не используется. В этом случае происходит операция Table Scan, т.е. перебор всех записей таблицы, а это и есть не оптимизированный поиск. С уважением, Алексей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2006, 07:50 |
|
||
|
|

start [/forum/topic.php?fid=41&tid=1590276]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
161ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 429ms |

| 0 / 0 |
