如何用一条sql 查询出今天的数据条数和昨天数据条数_SQL学习笔记(二)——SQL语法...

一、简单查询1. 基本查询
1、基本查询语句

 SELECT <列名1>,<列名2>,... FROM 表名;

示例:

 SELECT 姓名,性别 FROM student;

2、为列设定别名

 SELECT 姓名 as name,性别 as '人物性别' FROM student;

3、删除重复数据
1)DISTINCT 只用于一列前面

 SELECT DISTINCT 姓名 AS '人物姓名' FROM student;

2)DISTINCT用于多列前面
此时,后面的学号和姓名会进行组合

SELECT DISTINCT 学号,姓名 FROM student;


tips:DISTINCT只能紧着在SELECT之后
4、SELECT语句书写规则

  • SQL语句不区分关键词的大小写
  • 列名不能加单引号
  • 列名命名时不能有空格
  • 符号只能使用英文符号

2. 指定查询
1、WHERE语句指定条件

SELECT 学号 FROM student WHERE 姓名='猴子'

2、SQL语句运行顺序

  • 运行FROM子句,表示从哪张表中查询
  • WHERE子句:选择行
  • SELECT子句:选择列

3. 注释和SQL语句注意事项
单行注释:
-- 查询出全部列


多行注释:
/*注释符号*/4. 运算符
分为算数运算符、比较运算符和逻辑运算符。
1、算数运算符
+、-、* 、 /

SELECT 学号,课程号,成绩,成绩/100 as '百分比成绩' from score

2、比较运算符
1)运算符号
< 相等 <> 不等于 > 大于 <小于 >= 大于等于 ><=小于等于
2)示例

/*比较数字*/ 
SELECT 学号,课程号,成绩 FROM score Where 成绩<80

 /*比较日期*/ 
SELECT 学号,姓名,出生日期 FROM student  WHERE 出生日期 <'1990-01-01' 

/*查询null、查询非null*/ 
SELECT 教师号,教师姓名 FROM teacher WHERE 教师姓名 IS  (not) NULL;

3、逻辑运算符
1)逻辑运算符号
NOT 否定某一条件 AND 并且 BETWEEN 范围查询 OR 或者 IN OR的简单写法
2)示例

 /*根据成绩筛选*/ 
SELECT 学号,成绩 FROM score WHERE 成绩>=60 and 成绩<90

 /*根据姓名和性别查询*/ 
SELECT * FROM student WHERE  (性别 ='男') AND (姓名 IN('猴子','马云'))  

/*between and  [60,90]*/ 
SELECT * FROM score WHERE  成绩 BETWEEN 60 AND 90

 /*or*/ SELECT * FROM student WHERE  姓名='猴子' or 姓名='马云' 
SELECT * FROM score WHERE  成绩<60 or 成绩>90

 /*in*/ SELECT * FROM student WHERE  姓名 in ('马云' ,'猴子')

5. 谓词
1)语法
like:字符串模糊查询
%:任意字符串
_ :一个任意字符
2)示例

 SELECT * FROM student WHERE  姓名 LIKE '马%'

6. 练习网站

SQL Tutorial/zh - SQLZOO​sqlzoo.net

二、汇总分析

SELECT 查询结果 FROM 从哪张表查询数据 GROUP BY 分组 having 对分组结果指定条件

1. 汇总分析
1)汇总函数

  • count 求某列的行
  • sum 对某列求和
  • avg 对某列求均值
  • max 求某列数据的最大值
  • min 求某列数据的最小值

2)示例

 /*计算数量*/ 
SELECT count(教师姓名)
 FROM teacher 
WHERE 教师姓名 IS NULL;  

SELECT count(DISTINCT(姓名)) FROM student;  

 /*计算求和*/ 
SELECT SUM(成绩) FROM score; 

2. 分组
1)语法
GROUP BY
2)示例

/*根据性别进行分组*/ 
SELECT 性别,count(*) 
FROM student GROUP BY 性别;  

SELECT 性别,count(*) 
FROM student 
WHERE 出生日期 > '1990-01-01' 
GROUP BY 性别;
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值