Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выбор записей,  [new]
kmi
Member

Откуда: Москва
Сообщений: 36
Добрый день! Нужна помощь в составлении корректного запроса к БД.
Есть две таблицы.
В одной Orders хранятся заказы, ключевое поле order_id.
Другая Items содержит позиции заказов, первичный ключ item_id, вторичный order_id ссылается на Orders.order_id, плюс есть поле IsExists, в которой указывается, укомплектован ли заказ по этой позиции.
Нужно выбрать заказы, все позиции которых имеют IsExists=1, т.е. заказы, которые полностью укомплектованы.
25 май 16, 17:01    [19219339]     Ответить | Цитировать Сообщить модератору
 Re: Выбор записей,  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
kmi,
в каком месте запроса не получается решить?
25 май 16, 17:04    [19219351]     Ответить | Цитировать Сообщить модератору
 Re: Выбор записей,  [new]
kmi
Member

Откуда: Москва
Сообщений: 36
SELECT [Orders].[order_id]
,[Items].[item_id]
,[Items].[isExists]
FROM [Orders]
INNER JOIN [Items] VT ON [Items].[order_id] = [Orders].[order_id]

возвращает такой набор данных
order_iditem_idisExists
121
391
3191
3201
1221
1271
4281
3290


Надо, чтобы записи заказа с order_id=3 отсутствовали

К сообщению приложен файл. Размер - 3Kb
25 май 16, 17:22    [19219422]     Ответить | Цитировать Сообщить модератору
 Re: Выбор записей,  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
kmi,
ну можно так
NOT EXISTS 
(
 SELECT 1
 FROM [Items]
 WHERE
 order_id =  a.order_id AND
 isExists = 0
)
25 май 16, 17:36    [19219472]     Ответить | Цитировать Сообщить модератору
 Re: Выбор записей,  [new]
kmi
Member

Откуда: Москва
Сообщений: 36
TaPaK, спасибо!
25 май 16, 17:59    [19219554]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить