mysql:dql(基本数据查询)

数据查询语言DQL,关键字:select、from、where等

1、单表查询

(1)查询学生表的学生的全部属性信息:

select *
from student

(2)查询全体学生的学号与姓名:

select sno,sname
from student

(3)查询的属性值可以经过计算后输出:

select sname,2019-sage--查询姓名和年龄
from student

(4)目标列表达式还可以是字符串常量

select sname,'Year of Birth:',birthday 
from student

(5)distanct关键字

--distinct:用于去除重复元组,写在select之后,属性列表之前
--一个select语句只能有一个distinct

(6)null运算

--isnull(A,B):判断A是否为null,如果为null,函数取B值,否则取A
--null参与所有运算结果仍然为null

(7)排序

  • order by 属性名列表:将查询结果按属性名排序,如果需要改变排序方式,在属性名后,desc降序,asc升序
  • 使用关键词 asc/desc,如果省略默认为升序
    select studentno,sname,email--查询每个学生的学号,姓名和Email,按照班级编号降序排列,同一班级按入学成绩降序排列。
    from student 
    order by classno desc,point desc

2、聚合函数

(1)MAX

SELECT MAX(Id) ,sname
FROM t_stu

(2)MIN

SELECT MIN(Id) ,sname
FROM t_stu

(3)count

SELECT COUNT(Id)
FROM t_stu

只要是一条记录中有一个字段不为空的字段就进行计数,而select count(字段)只会统计该字段不为null的记录条数

SELECT COUNT(*)
FROM t_stu

 SELECT COUNT(*)与SELECT COUNT(1):

count(1)或括号中是其它数字、字段名,表示只选择一个字段进行查询,而count(*)表示选择所有的字段进行查询,因此, SELECT COUNT(*)的效率较低

 

原文地址:https://www.cnblogs.com/zhai1997/p/11372953.html