|
|
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
В Акцессе есть две таблицы. В одной (Result) содержатся некие данные. В другой (Phone) есть номера телефонов. Нужно из первой выбрать все записи, где поле ClearNumer не совпадает ни с одной записью в поле Phone таблицы Phone. Пытался сделать так SELECT * FROM Result, Phone WHERE Result.NumberClear Not Like '*[Phone]![Phone]'; Но ничего не получается :( Если не использовать * после Like, то отбирается, но хотелось бы именно не точное совпадение искать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 12:18:11 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Попробуй так SELECT Result.* FROM Result where Result.NumberClear not in (SELECT Result.NumberClear FROM Result, Phone WHERE Result.NumberClear Like '*' & [Phone]![Phone] & '*';); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 12:47:55 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Попробуй еще так: SELECT * FROM Result LEFT JOIN Pnone ON NumberClear = Phone.Phone WHERE Phone.Phone IS NULL -- Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 12:58:45 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Поправка: не прав, join точное соответствие учитывает. -- Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:00:11 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Спасибо всем! особенно Roma R. Всё заработало :) Теперь добавлю сам ещё отборы по стоимости и т.д. Но это уже вроде понятнее :) Iskander68 Да, с JOIN не захотело, ну ничего. Уже всё работает :) Правда тормоза небольшие при выполнении запроса... Около минуты расчитывается. Ну да Бог с ним. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:12:15 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Вместо Not In попробуй Exist. Должно работать побыстрее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:18:49 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Iskander68 Поправка: не прав, join точное соответствие учитывает. -- Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 join учитывает то соответсвие, которое в условии склейки таблиц ВЫ написали - в вашем случае это =, но никто не мешает вам там и LIKE прописать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:19:33 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Учту, спасибо. -- Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:29:42 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Тогда так что ли? SELECT * FROM Result LEFT JOIN Pnone ON Phone.Phone LIKE "*" & NumberClear & "*" WHERE Phone.Phone IS NULL Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 13:33:48 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Iskander68 Тогда так что ли? SELECT * FROM Result LEFT JOIN Pnone ON Phone.Phone LIKE "*" & NumberClear & "*" WHERE Phone.Phone IS NULL Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 Дык - это Проверь - и скажешь нам - так или не так :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:15:31 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
SELECT * FROM Result LEFT JOIN Phone ON Phone.Phone LIKE "*" & NumberClear & "*" WHERE Phone.Phone IS NULL; При попытке сохранить Запрос Акцес выдаёт ошибку "Не поддерживается выражение объединения" и выделяет часть запроса Phone.Phone LIKE "*" & NumberClear & "*" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:22:59 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Roma RВместо Not In попробуй Exist. Должно работать побыстрее Вообще сохранять запрос не хочет, говорит, что пропущен оператор ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:34:15 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Я писал начисто в форум, не проверяя, в чем каюсь. Проверил. Не работает - синтакс. ошибки. Вот так должно: SELECT NumberClear, Phone FROM Result LEFT JOIN Phone ON Result.NumberClear LIKE "*" & Phone.Phone & "*" WHERE Phone Is Null; -- Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:36:56 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
SELECT Result.* FROM Result WHERE (((Exists (SELECT t.NumberClear FROM Result as t, Phone WHERE Result.NumberClear Like '*' & [Phone]![Phone] & '*';))=False)); SELECT Result.* FROM Result LEFT JOIN Phone ON Result.NumberClear like "*" & Phone.Phone & "*" where isnull( Phone.Phone); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:43:08 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Iskander68 Я писал начисто в форум, не проверяя, в чем каюсь. Проверил. Не работает - синтакс. ошибки. Вот так должно: SELECT NumberClear, Phone FROM Result LEFT JOIN Phone ON Result.NumberClear LIKE "*" & Phone.Phone & "*" WHERE Phone Is Null; -- Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 Да, теперь точно работакт :) Выдаёт одинаковые данные вместе с запросом от Roma R, и работает примерно втрое быстрее :) Спасибо всем!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:47:25 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
Попробуй поменять местами в ON Result.NumberClear LIKE "*" & Phone.Phone & "*" Result.NumberClear и Phone.Phone - на "обратной" проверки. -- Regards Alexander Artamonov Posted via ActualForum NNTP Server 1.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:49:41 |
|
||
|
Помогите с LIKE
|
|||
|---|---|---|---|
|
#18+
[quot Roma R]SELECT Result.* FROM Result WHERE (((Exists (SELECT t.NumberClear FROM Result as t, Phone WHERE Result.NumberClear Like '*' & [Phone]![Phone] & '*';))=False)); quot] А этот вариант вообще практически мгновенно выполняется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 14:50:34 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32734092&tid=1671167]: |
0ms |
get settings: |
5ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
39ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 195ms |
| total: | 306ms |

| 0 / 0 |
