![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL-запрос [D7, FireBird 2.0]
MZ © (2007-08-30 16:22:00)Есть две таблицы Table1(id:integer, service:integer) и Table2(id:integer;service:integer) как построить sql запрос чтоб выбрать записи которые есть в Table1 и нет в Table2 по одной услуге
(service)
MZ (2007-08-30 17:43:00) [1]
> издеваешься ?
>
Ни в коем случае.... :-) спасибо, разобрался...
select
T1.id,
T1.service
from Table1 T1 left join Table2 T2 on T1.id = T2.id and
T1.service = T2.service
where T2.id is null and T1.service =
(select distinct (service) from table2)
Не знаю на скока это оптимально, но работает
Fay (2007-08-30 17:36:00) [2]
> И что это даст?
издеваешься ?
MZ (2007-08-30 17:31:00) [3]
> select distinct service_id from table2
И что это даст? Я узнаю услугу, а мне нужно узнать разность записей двух таблиц по этой услуге
Fay (2007-08-30 17:30:00) [4]
> и запрос выдаст результат который включит все услуги которые
> содержаться в Table1, а мне нужна только та которая в table2
м.б. ты с меня ещё премию снимешь за ошибку?
сядь и допиши where.
Вася Правильный (2007-08-30 17:27:00) [5]
> а мне нужна только та которая в table2
select distinct service_id from table2
MZ (2007-08-30 17:24:00) [6]
> select
> T1.id,
> T1.service
> from Table1 T1 left join Table2 T2 on T1.id = T2.id and
> T1.service = T2.service
> where T2.id is null
и запрос выдаст результат который включит все услуги которые содержаться в Table1, а мне нужна только та которая в table2
Fay (2007-08-30 17:16:00) [7]кто-нибудь уже научится приводить структуру ?
не вижу PK. в упор не вижу
select
T1.id,
T1.service
from Table1 T1 left join Table2 T2 on T1.id = T2.id and T1.service = T2.service
where T2.id is null
Johnmen (2007-08-30 17:12:00) [8]Устойчивое дежа вю...
http://www.aspnetmania.com/Articles/Article.aspx?ID=41
MZ (2007-08-30 17:09:00) [9]
> судя по всему table2 - временная таблица
>
Да
Вася Правильный (2007-08-30 17:07:00) [10]судя по всему table2 - временная таблица
MZ (2007-08-30 17:05:00) [11]
> А начерта они есть ?
> Одной мало ?)
Table2 -таблица для сверки записей при импорте
MZ (2007-08-30 17:03:00) [12]
> select * from table1 t1
> where not exists (select 1 from table2 t2 where t1.service=t2.
> service)
>
Я не знаю какая услуга в данный момент храниться в Table2
Сергей М. (2007-08-30 17:03:00) [13]
> Есть две таблицы Table1(id:integer, service:integer) и Table2(id:
> integer;service:integer)
А начерта они есть ?
Одной мало ?)
MZ (2007-08-30 16:59:00) [14]
> а в Table2 содержаться все услуги
>
в table1, прошу прощения
MZ (2007-08-30 16:58:00) [15]
> в поле Integer ты больше одного значения не затол
я имею в виду что в Table2 может содержаться тока одна услуга т.е. все записи в этой таблице в поле service будут иметь одинаковое значение, а в Table2 содержаться все услуги
Вася Правильный (2007-08-30 16:52:00) [16]
> В Table2 поле service может содержать тока одно значение 1 или 2 или 3
в поле Integer ты больше одного значения не затолкаешь
Sergey13 (2007-08-30 16:45:00) [17]> [0] MZ (30.08.07 16:22)
select * from table1 t1
where not exists (select 1 from table2 t2 where t1.service=t2.service)
MZ (2007-08-30 16:36:00) [18]
> по каждой или по конкретной?
>
В Table2 поле service может содержать тока одно значение 1 или 2 или 3
и т.д.
MZ (2007-08-30 16:36:00) [19]
> по каждой или по конкретной?
>
В Table2 поле service может содержать тока одно значение 1 или 2 или 3
и т.д.
Azize (2007-08-30 16:36:00) [20]
> MZ (30.08.07 16:22)
EXСEPT?