2016-12-30 7 views
-2

У меня есть таблица, как показано нижеКак выбрать идентификатор заказа, где все количество продуктов равно нулю?

enter image description here

Я хочу, чтобы получить recivedID, которые имеют quant=0

В этой таблице мы жгут recivedID их количество продукции, равное нулю как выбрать recivedID, которые все это количество продуктов, равное нулю i ho вы понимаете, что я имею в виду, и мне очень жаль мое плохое английское умение Спасибо

SELECT DISTINCT 
     rd.recivedID FROM recivedDetailsTBL rd 
JOIN stockTBL s ON s.recivedID = rd.recivedID 
WHERE 
    (SELECT COUNT(*) FROM recivedDetailsTBL rd WHERE rd.recivedID = @recivedID) --3 
     = 
    (SELECT COUNT(*) FROM stockTBL s WHERE s.quant =0 AND s.recivedID = @recivedID )--3 
+0

Есть ли у вас попробовал написать любой код вообще, чтобы решить это самостоятельно? –

ответ

0
SELECT recivedID FROM stockTBL GROUP BY recivedID HAVING (SUM(quant) = 0) 
1

Предположительно, вы говорите о чем-то похожее на это в SQL Format:

SELECT recivedID FROM stock WHERE quant = '0' 

Такой запрос будет выбрать recivedID со склада в таблице, где квант элемента 0.

+0

Возможно, не все товары в этом порядке равны нулю –

+0

Исправьте меня, если я ошибаюсь, он все равно найдет элементы, которые являются INT, или, по крайней мере, так, как я видел, что он работает до сих пор. Как вы сформулировали свои вопросы Амальные звуки, как будто вы только хотите найти продукты, полученные с помощью кванта 0. Разве это не так? –

0

Первый : -

использовать следующий код: -

Select recivedID 
From TableName 
GROUP BY recivedID 
HAVING SUM(quant) = 0 

Второй: -

Lean операторов SQL Основные понятия, существуют тысячи-ресурсов, использовать это в качестве примера:

SQL Tutorial

+0

нет, вы не понимаете, что я имею в виду возможно одно количество продукта, равное нулю, то этот оператор будет возвращать recivedID то, что мне нужно, возвращено recivedID, когда весь продукт в этом восстановлен равным нулю –

+0

@AmalAhmed Итак, получите обновленный запрос, Hope это то, что вам нужно. –

1

OK,

Так где респонденты путаюсь является ваше объяснение ...

С вашего объяснения, вы можете иметь много prodID в одном recivedID

Из того, что вы говорили, вы хотите recivedID только тогда, когда сумма quant является 0.

Таким образом, вы должны использовать HAVING пункт:

SELECT 
recivedID 
FROM recivedDetailsTBL 
GROUP BY recivedID 
HAVING SUM(quant) = 0 
+0

Вы правы спасибо и я извиняюсь за свое плохое объяснение –

Смежные вопросы