> 技术文档 > 面试题:sql题一

面试题:sql题一

SELECT p.product_id,  -- 产品ID p.product_name,  -- 产品名称 SUM(s.sale_qty * s.unit_price) AS sum_price, -- 年销售总价 YEAR(s.sale_date) AS year_date -- 销售年份FROM products pJOIN sales s ON p.product_id = s.product_idGROUP BY p.product_id, p.product_name, YEAR(s.sale_date)HAVING SUM(s.sale_qty * s.unit_price) > 1000 -- 年总价大于1000ORDER BY sum_price DESC; -- 按总价降序排列

表结构示例:

products(产品表)

字段名 类型 说明 product_id INT 产品ID product_name VARCHAR 产品名称

sales(销量表)

字段名 类型 说明 sale_id INT 销售记录ID product_id INT 产品ID sale_qty INT 销量 unit_price DECIMAL 单价 sale_date DATE 销售日期

查询说明:

  • 本查询用于统计每个产品每年销量总价大于1000元的销售情况,并按总价从高到低排序。

西安分类信息