4 | 挑战题答案
SELECT vend_name
FROM Vendors
WHERE vend_country = 'USA' AND vend_state = 'CA';
2. 编写 SQL 语句,查找所有至少订购了总量 100 个的 BR01、BR02 或
BR03 的订单。你需要返回 OrderItems 表的订单号(order_num)、
产品 ID(prod_id)和数量,并按产品 ID 和数量进行过滤。提示:
根据编写过滤器的方式,可能需要特别注意求值顺序。
--解法 1
SELECT order_num, prod_id, quantity
FROM OrderItems
WHERE (prod_id='BR01' OR prod_id='BR02' OR prod_id='BR03')
AND quantity >=100;
--解法 2
SELECT order_num, prod_id, quantity
FROM OrderItems
WHERE prod_id IN ('BR01','BR02','BR03')
AND quantity >=100;
3. 现在,我们回顾上一课的挑战题。编写 SQL 语句,返回所有价格在 3
美元到 6 美元之间的产品的名称(prod_name)和价格(prod_price)。
使用 AND,然后按价格对结果进行排序。
SELECT prod_name, prod_price
FROM products
WHERE prod_price >= 3 AND prod_price <= 6
ORDER BY prod_price;
4. 下面的 SQL 语句有问题吗?(尝试在不运行的情况下指出。)
SELECT vend_name
FROM Vendors
ORDER BY vend_name
WHERE vend_country = 'USA' AND vend_state = 'CA';