|
|
|
Помогите сделать выборку.
|
|||
|---|---|---|---|
|
#18+
Всем привет. Нужен совет и помощь от знающих. Есть таблица idformalname fullname level1переделкино в селе переделкино сгорела дача 502клюковское в районе мирном были видны корабли 93корабли в речке затонули корабли504сад в кооперативе все хорошо85кристофер Корабли отплыли 96недалеко от бобруйска село переделкино снова на первой полосе 9 Нужно сделать выборку: 1. Находим все записи у которых level=50 и level=9 2. Сравниваем столбцы Formalname у которых level=50 с столбцами Fullname у которых level=9. выводим id совпавших записей. Дело в том что в столбце fullname(level=9) может быть все что угодно, но если есть совпадение хотя-бы одного слова, с словом в столбце formalname(level=50) то эта запись должна попасть в выборку. В данном примере результат должен быть: id256 Из за отсутствия опыта и знаний не могу понять даже с чего начать, Отбор по Level сделать можно с помощью case, но вот сравнение значений... для меня не понятно. З.Ы. в реальной таблице подобных записей миллионы. Так что перечислять с помощью Like значения из столбца formalname не вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2016, 09:34 |
|
||
|
Помогите сделать выборку.
|
|||
|---|---|---|---|
|
#18+
Lanmarkесли есть совпадение хотя-бы одного слова Опасная тенденция... у тебя в formalname есть предлоги, а они тоже слова, рискуешь наиметь хренову гору "косых" пар. При такой постановке задачи рекомендую написать собственную функцию сравнения двух значений, дающую True, если в них имеется общее слово, с учётом вменяемых ограничений (например, слово должно быть длиннее 3 символов). Типа Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. и использовать её в запросе: Код: sql 1. 2. 3. 4. 5. Конечно, функцию надо доработать - организовать замену знаков препинания на пробелы и организовать поиск только целых слов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2016, 09:59 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=91&tid=1831384]: |
0ms |
get settings: |
9ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
50ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 256ms |
| total: | 366ms |

| 0 / 0 |
