![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с sql запросом [D7, XP]
Tany © (2009-04-07 20:52:00)Мастера здрасте, кто в курсе посоветуйте
постановка задачи:
есть две даблицы одинаковой структуры
TABLE `ONE` TABLE `TWO`
ID|TELEFON|NAME ID|TELEFON|NAME
1|340021 |name1 1 |903889 | name2
вот нужно вывести какие телефоны из таблицы `ONE` не содержаться
в таблицы `TWO`(примечание: в поле TELEFON, телефоны могут повторяться).
конечно можно взять первую таблицу, сгруппировать по полю TELEFON
и в цикле делать select ко второй таблице "собирая" пустые резулататы
А можно ли сделать это одним SQL запросом?
AndreyV (2009-04-08 10:34:00) [1]> [10] Tany (07.04.09 23:04)
> нет не было, конечно знала что с индексами быстрее но не
> знала что на столько
Ага, а я ведь хотел про индекс упомянуть, да отчего-то воздержался.:)
Ega23 (2009-04-08 10:31:00) [2]
> Три порядка конечно впечатляют!
По текстовому полю - влёгкую!
Anatoly Podgoretsky (2009-04-08 10:21:00) [3]> Ega23 (08.04.2009 10:12:11) [11]
Три порядка конечно впечатляют!
Ega23 (2009-04-08 10:12:00) [4]
> но не знала что на столько
Век живи - век учись
Tany (2009-04-07 23:04:00) [5]
Запрос занял 0.0012 секпосле
Запрос занял 1.0108 секдо
правда не на всех записях но все же
> Anatoly Podgoretsky © (07.04.09 22:52) [9]
нет не было, конечно знала что с индексами быстрее но не знала что на столько
Anatoly Podgoretsky (2009-04-07 22:52:00) [6]> Tany (07.04.2009 22:47:07) [7]
Есть ли индекс по полю telephon
Игорь Шевченко (2009-04-07 22:50:00) [7]
> Этот сапрос отстанавливает часы на трее где-то на час
наверное нужно сделать индекс, а если записи повторяются, то сказать select distinct
Tany (2009-04-07 22:47:00) [8]
select t1.telephon
from t1
where t1.telephon not in (select t2.telephon from t2)
Этот сапрос отстанавливает часы на трее где-то на час
таблички около 60 тыс записей каждая
Tany (2009-04-07 21:13:00) [9]
> AndreyV © (07.04.09 21:09) [4]
Оооо спасибо оно not inнужно подналечь на справочку, Спасибо
b z (2009-04-07 21:10:00) [10]distinct + where not exists
?
AndreyV (2009-04-07 21:09:00) [11]select t1.telephon
from t1
where t1.telephon not in (select t2.telephon from t2)
Tany (2009-04-07 21:04:00) [12]ну вот те которые совпадают можно сделать хотя бы и через
параметры
select p1.telefon where p1.telefon = p2.telefon, а вот как наоборот ((
Tany (2009-04-07 20:58:00) [13]
> не знаю. СУБД не указана
mysql или FireBird&InterBase
лучше на mysql!
Игорь Шевченко (2009-04-07 20:56:00) [14]
> А можно ли сделать это одним SQL запросом?
не знаю. СУБД не указана