营销部门希望首先关注来自 Noth America 的客户。获取所有客户的 ID、姓氏和国家。通过首先提出居住在加拿大和美国的客户来构建列表,最后通过 ID 订购。提示:在 ORDER BY 子句中使用 IN 表达式。
我试过很多次
SELECT CustomerID, LastName, Country
FROM Customer
ORDER BY Country IN ('Canada', 'USA'), CustomerID
但它似乎不起作用,因为它按照它们在原始表中出现的顺序(也按 ID 排序)从所有客户中获取指定字段,即使我CustomerID
从ORDER BY
条款中删除,而不关心他们到哪个国家属于。
我应该怎么办?我对 SQL 很陌生,不知道如何解决这个问题。
编辑:WHERE
根本不适合,因为我需要考虑所有客户,只确保加拿大和美国的客户出现在列表的顶部。此外,我不确定要使用诸如UNION
,之类的语句,因为本教程还没有深入。AS
EXCEPT