zoukankan      html  css  js  c++  java
  • SQL基础教程(第2版)第3章 聚合与排序:练习题

    存在以下 3 个错误。
    1.使用了字符类型的列(product_name)作为 SUM 函数的参数。
    >> 解答
    SUM 函数只能使用数值类型的列作为参数。
    
    2WHERE 子句写在了 GROUP BY 子句之后。
    >> 解答
    WHERE 子句必须写在 GROUP BY 子句之前。
    
    3SELECT 子句中存在 GROUP BY 子句中未指定的列(product_id)。
    >> 解答
    使用 GROUP BY 子句时,书写在 SELECT 子句中的列有很多限制。 GROUP BY
    子句中未指定的列不能书写在 SELECT 子句之中。
    
    
    在 WHERE 子句中指定 regist_date 的大小关系作为条件并没有什么问题。
    存在以下 3 个错误

    子句的书写顺序 ,1. SELECT → 2. FROM → 3. WHERE → 4. GROUP BY


     

    SELECT product_type, SUM(sale_price), SUM(purchase_price)
      FROM Product
     GROUP BY product_type
    HAVING SUM(sale_price) > SUM(purchase_price) * 1.5;
    View Code

    本习题中是登记日期(NULL 排在开头还是末尾会根据 DBMS 不同而不同,无需考虑)。因此我们能够推断出首先是按照登记日期的降序进行排序的。
    接下来,对于日期相同的记录,例如同为“2009-09-20”的 3 条记录,可以看出是按照销售单价的升序进行排序的。

    SELECT *
      FROM Product
     ORDER BY regist_date DESC, sale_price;
    View Code
    部分内容来自于学习编程期间收集于网络的免费分享资源和工作后购买的付费内容。
  • 相关阅读:
    python服务注册到nacos
    springboot设置响应状态码
    nio 实现群聊小系统
    记一次maven问题(把maven仓库打包后在离线环境另一个机器导入不成功)
    客户端查看sql的执行时间
    java 运行python脚本
    http访问支持websocket
    ”真实项目“ 与“作业”
    工厂方法模式
    idea 开发 SSM jar包找不到
  • 原文地址:https://www.cnblogs.com/MarlonKang/p/12228117.html
Copyright © 2011-2022 走看看