SQL基础教程(第2版)笔记

 

目录

第二章 查询基础

2-1 SELECT语句基础

2-2算术运算符和比较运算符

2-3 逻辑运算符

第3章 聚合与排序


 

第二章 查询基础

2-1 SELECT语句基础

注释

  • 1行注释

  书写在“--”之后,只能写在同一行,MySQL中需要在“--”之后加入半角空格(如果不加的话就不会
被认为是注释)

  • 多行注释

  书写在“/*”和“*/”之间,可以跨多行

2-2算术运算符和比较运算符

+ - * / ()

SELECT product_name, sale_price,
 sale_price * 2 AS "sale_price_x2"
 FROM Product;

result

  • 只有 NULL 除以 0 时不会发生错误,并且结果还是 NULL

 比较运算符

bijiao
比较

字符串比较

典型的规则就是按照字典顺序进行比较,也就是像姓名那样,按照条目在字典中出现的顺序来进行
排序。

不能对NULL使用比较运算符

可使用 IS 或 IS NOT

WHERE purchase_price IS NULL;

2-3 逻辑运算符

NOT 

AND 运算符在其两侧的查询条件都成立时整个查询条件才成立,其意思相当于“并且”。
OR 运算符在其两侧的查询条件有一个成立时整个查询条件都成立,其意思相当于“或者”

SQLServer中带中文的字符串用NVARCHAR,NCHAR(30)不够的话后面有空格,VCHAR显示不出来中文

AND运算符的优先级高于OR运算符。想要优先执行OR运算符时可以使用括号。

第3章 聚合与排序

3-1 对表进行聚合查询

聚合函数

  1. COUNT:计算表中的记录数(行数) 
    SELECT COUNT(*) as count from Product;

    计算NULL之外的数据的行数,purchase_price为NULL将不统计

    SELECT COUNT(purchase_price) AS count FROM Product;

     

  2. SUM: 计算表中数值列中数据的合计值
    SELECT SUM(sale_price), sum(purchase_price) FROM Product;

     

  3. AVG: 计算表中数值列中数据的平均值
    SELECT AVG(sale_price) FROM Product;

     

  4. MAX: 求出表中任意列中数据的最大值
  5. MIN: 求出表中任意列中数据的最小值

使用聚合函数删除重复值(关键字DISTINCT)

计算出商品种类的个数:

SELECT COUNT(DISTINCT product_type) FROM Product;

价格去重后求和: 

SELECT SUM(sale_price), SUM(DISTINCT sale_price) FROM Product;

3-2 对表进行分组

GROUP BY子句

按照商品种类统计数据行数

SELECT product_type, COUNT(*) FROM Product GROUP BY product_type;

使用WHERE子句时GROUP BY的执行结果

SELECT purchase_price, COUNT(*) FROM Product WHERE product_type = '衣服' GROUP BY purchase_price;


GROUP BY 和 WHERE 并用时 SELECT 语句的执行顺序
FROM → WHERE → GROUP BY → SELECT

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值