Проверьте, присутствует ли значение в столбце или нет в SQL Server 2005 - PullRequest
2 голосов
/ 20 января 2010

Hai парни,

У меня есть таблица со столбцом с именем Is_Deleted , и мой запрос

select Is_Deleted from Stock where Stock.Mat_Id=1

альтернативный текст http://www.freeimagehosting.net/uploads/aaaff13d8a.jpg

Теперь я должен написать условие, чтобы проверить, все ли значения 1 , иначе мне нужно завершить цикл. Как это можно сделать?любые предложения ...

Ответы [ 3 ]

1 голос
/ 20 января 2010

Это должно сделать то, что вы после.

IF EXISTS(SELECT 1 FROM (select DISTINCT Is_Deleted from Stock where Stock.Mat_Id=1) a WHERE Is_Deleted <> 1)
BEGIN
 -- Terminate the loop
END
ELSE
BEGIN
 -- Perform action
END
1 голос
/ 20 января 2010

Простое существует - это все, что вам нужно

IF EXISTS (SELECT * FROM Stock.Is_Deleted = 0 AND Stock.Mat_Id = 1)
...

Если вы просматриваете разные Mat_Ids ...

...
--Get first @Mat_Id
WHILE @Mat_Id IS NOT NULL
BEGIN
    IF EXISTS (SELECT * FROM Stock.Is_Deleted = 0 AND Stock.Mat_Id = @Mat_Id)
    BEGIN
       ...
    END
    SET @Mat_Id = NULL
    --Get next @Mat_Id
END
...
1 голос
/ 20 января 2010
select exists(select 1 from Stock where Mat_Id = 1 and
  (is_deleted is null or is_deleted <> 1))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...