【发布时间】:2017-04-17 10:54:06
【问题描述】:
谁能帮我写出这个要求。我似乎无法将空值与所有其他条件一起加载。
-- (1) 没有一位艺术家是 80 岁或以上 ——而且他们的年龄都在 50 岁或以下 -- 死了。
-- (2) 没有一位艺术家年龄在 54 岁、56 岁、 -- 他们死的时候是 71 或 76。
-- (3) 一些艺术家还活着。
-- (4) 既是德国人又是德国人的艺术家 -- 专攻摄影艺术(“照片”) -- 被排除在外。
-- (5) 没有一个艺术家有字母'o' -- 在他们的姓氏中的任何地方。
-- (6) 没有艺术家有名字 -- 'Hannah'、'Julia' 或 'Frasier'。
select artist_id, first_name, last_name, died - born AS age, speciality, nationality
from simon_antiques
where Died - born Not in (54, 56, 71, 76)
AND first_name NOT IN ('Hannah', 'Julia', 'Frasier')
AND last_name not like '%o%'
AND (nationality <> 'German' or speciality <> 'Photo')
AND (died - born between 50 and 80 or died is null)
Order by last_name
这会加载所有结果,但不会加载还活着的艺术家。如果我将条件带出括号,它将带回所有活着的人,而不管其他条件如何。
【问题讨论】: