У меня есть таблица вроде этого:Выберите строки с одним или другим условием или как в сочетании
Name Candy Fruits
_____________________
John 1 2
Luis 0 1
Mary 1 1
Julio 0 0
То, что я пытаюсь сделать это, чтобы фильтровать эту информацию, люди, которые только что конфеты: John, Mary
. Или просто люди, у кого есть фрукты: John, Luis, Mary
То, что я попытался это:
DECLARE @wCandy BIT, @wFruits BIT
SET @wCandy = 1, @wFruits = 0
SELECT Name, Candy, Fruits
FROM People
WHERE (
(@wCandy = 0) OR (Candy > 0))
AND ((@wFruits = 0) OR (Fruits > 0))
)
Какой результат в этом (только народ Cо спаренной более 0 конфет):
Name Candy Fruits
_____________________
John 1 2
Mary 1 1
Поэтому, если я установил @wCandy = 0
и @wFruits = 1
, я должен увидеть людей с более чем 0 фруктами и наоборот с @wCandy
, установленным на 1
Это работает, но есть еще один случай, когда я хочу обоих, те, у кого есть конфеты и фрукты. Результат должен быть:
Name Candy Fruits
_____________________
John 1 2
Luis 0 1
Mary 1 1
Я пытался так много вещей, как с помощью сазе, но я не получил его на работу. Я надеюсь, что кто-то может помочь.
Неясно, что такое iss ue здесь. Вы только устанавливаете свою переменную конфеты и не устанавливаете переменную фруктов? Если это так, ваша переменная fruit будет NULL и не будет возвращена. –
@SeanLange, извините. Смотрите мое редактирование, пожалуйста! – geekth
Чтобы охватить все случаи, вы должны добавить пользователя, у которого есть Candy, а не Fruits. – McNets