Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

SQL-запрос [D7, FireBird 2.0]


Страницы:   1 2

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?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо