0
点赞
收藏
分享

微信扫一扫

SQL03:复杂一点的查询

静悠 2022-03-20 阅读 51
sql

一、练习题

3.1

CREATE VIEW ViewPractice5_1 (product_name, sale_price, regist_date)
SELECT product_name, sale_price, regist_date
FROM product AS product
WHERE sale_price >= 1000
AND regist_date = '2009-09-20';
SELECT * FROM ViewPractice5_1;

3.2
INSERT INTO ViewPractice5_1 VALUES (’ 刀子 ', 300, ‘2009-11-02’);
的结果是:product中添加数据成功,ViewPractice5_1视图中没有数据添加,因为不满足条件

3.3

SELECT product_id, product_name, product_type, sale_price,

(SELECT AVG(sale_price)

FROM product) AS sale_price_avg

FROM product AS p;

3.4
– 创建视图的语句
CREATE VIEW AvgPriceByType
AS
SELECT product_id,product_name,product_type,sale_price,
(SELECT AVG(sale_price)
FROM product p2
WHERE p1.product_type = p2.product_type
GROUP BY p1.product_type) AS avg_sale_price
FROM product p1;

3.5
正确

3.6
1:选出了购买价格不是500, 2800和5000的商品
2:NOT IN 中不能包含null,通常返回空;

3.7
SELECT SUM(CASE WHEN sale_price <= 1000 THEN 1 ELSE 0 END) AS low_price,
SUM(CASE WHEN sale_price BETWEEN 1001 AND 3000 THEN 1 ELSE 0 END) AS mid_price,
SUM(CASE WHEN sale_price >= 3001 THEN 1 ELSE 0 END) AS high_price
FROM product;

举报

相关推荐

0 条评论