Я хочу проверить, есть ли у моего клиента iPhone, iPad или Macbook. Я не ищу, сколько iPhone или iPad или Macbook у одного покупателя, я просто хочу определить, владеют ли они одним из них, или они владеют двумя, или они владеют всеми тремя.
Я думаю об использовании функции CASE WHEN
, и вот запрос:
select customer
, case when AppleProduct = 'iPhone' THEN 'TRUE' ELSE 'FALSE END AS Owns_iPhone
, case when AppleProduct = 'iPad' THEN 'TRUE' ELSE 'FALSE AS Owns_iPad
, case when AppleProduct = 'Macbook' THEN 'TRUE' ELSE 'FALSE' AS Owns_Macbook
from Apple_Product_Ownership
Это результат, который я пытаюсь получить
customer | Owns_iPhone | Owns_iPad | Owns_Macbook
X TRUE TRUE FALSE
Y FALSE TRUE TRUE
Z TRUE FALSE FALSE
Но вместо этого я получаю
customer | Owns_iPhone | Owns_iPad | Owns_Macbook
X TRUE FALSE FALSE
X FALSE TRUE FALSE
Y FALSE TRUE FALSE
Y FALSE FALSE TRUE
Z TRUE FALSE FALSE