单表数据记录查询

一、DISTINCT的用法(查询多个字段,仅对其中一个去重复)

  1. distinct必须放在开头
错: select id, distinct name from table
  1. 正确写法

这里写图片描述
select *, COUNT(DISTINCT Sno ) from student_course GROUP BY Sno
这里写图片描述
二、实现数学四则运算数据库查询(+-*/%)

select ename,moonSalay*12 as yearSalary from t_employee;

三、函数CONCAT()来连接字符串

//Mary的年薪为:800000.00
select concat(ename,‘雇员的年薪为:’,moonSalary*12 ) yearSalary from employee;

四、BETWEEN AND(NOT BETWEEN AND)

//包含边界
select * FROM student_course where  student_course.grade  BETWEEN 50 and  80

五。IS NULL(IS NOT NULL)
带IS NULL 关键字的空值查询

select * from student where grade IS not null

六、IN ( NOT IN )

 select * from student where stuNum In (10,21,56,54,89)

注:由于NULL不能进行如何的“操作”

–如果null参与算术运算,则该算术表达式的值为null。(例如:+,-,*,/ 加减乘除)

–如果null参与比较运算,则结果可视为false。(例如:>=,<=,<> 大于,小于,不等于)

–如果null参与聚集运算,则聚集函数都置为null。除count(*)之外。

–如果在not in子查询中有null值的时候,则不会返回数据。

--正确写法                      
SELECT  * FROM   dbo.Table_A AS a
WHERE   a.ID NOT IN ( SELECT    b.ID
                      FROM      dbo.Table_B AS b
                      WHERE     b.ID IS NOT NULL )
                       --排除NULL值参与运算符比较

七、Like
“_”通配符:能匹配单个字符
“%”通配符:能匹配任意长度,既可以是0个又可以是一个,还可以是N个

select * from student where name Like 'A%'
select * from student where name Like 'a%'
//查询结果一样,不区分大小写
select * from student where NOT name Like 'A%'
select * from student where name Like '_A%'
//查询所有数据记录
select* from student where name like '%%'

八、ORDER BY

//单字段升序(默认)排列
select * from student order by grade
//单字段降序排列
select * from student order by grade desc
//多字段排序
select * from student order by grade,date desc

九、LIMIT(常用于分页)

select * from  student LIMIT(a,b)
//a为起始位置,B表示查询的条数
select * from  student LIMIT b
//不指定起始位置则从第一条开始

MySql所支持的统计函数,如果所操作的表中没有任何数据记录, count函数返回数据为NULL 其余返回为0

十、COUNT

//统计所有数据记录的条数,不管是不是NULL
select count(*) allNumber from student
//NULL的不统计
select count(course) partNumber from  student  

十一、AVG统计平均值
SUM求和
MAX、MIN最大最小值

十二、GROUP BY

//
select * from student group by stuClass 

十三、GROUP_CONCAT
十四、
十五、
十二、
十二、
十二、

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值