DQL:数据库的查询语句初学
1.查询全表数据
在查询之前,我们需要先创建一个所需的表`
select *from 表名; [注意,实际开发中,写sql的时候,不能写**号,需要查询全表的时候,需要写全部的名称字段]
select
s.id as “编号”,
s.name as “姓名”,
s.age as “年龄”,
s.math as “地址”
from
表名 as s
2.查询部分字段,
查询指定字段 需求:查询出员工的编号以及员工的姓名,年龄,性别
select
s.id “员工id”,
s.name “员工姓名”,
s.age “员工年龄”,
s.sex “员工性别”
from
stu3 s;
去除他的重复性
select
distinct address
from stu3
3.查询的时候,可以将字段为整数类型进行求和(相加)
需求:查询员工的id,name,age,sex,以及数学和英语的总分;
select
id “编号”,
name “员工姓名”,
age “员工年龄”,
sex “员工的性别”,
(math+english) “总分”
from
stu3;
注意,在求和的时候,是两个整数类型在进行求和,但是如果其中一个整数字段里是空值(null),那么两者相加也就是(null),那么要解决这个问题的话,我们可以用到一个函数
select
id “编号”,
name “员工姓名”,
age “员工年龄”,
sex “员工的性别”,
(math+ifnull(english,0)) “总分”
from
stu3;
当我们加上这个ifnull()函数后,他会判断,如果,英语成绩是null的话,那么会吧他的null修改为0分
4.带条件查询
select 指定的字段 from 表名 where 条件
需求,查询出年龄大于等于20岁的员工姓名,年龄,性别以及总成绩:
select
name “姓名”,
age “年龄”,
sex “性别”,
(math+ifnull(english,0)) “总分”
from
stu3
where age<=20;
where的条件是可以跟多个的,并列条件或者或的条件(&& || )
需求:查询学生的年龄在20-30岁的学生所有消息
select
*
from
stu3
where
age >=20 && age<=30; --也可以写成age >=20 and age<=30;[and是mysql自己的语法]
还可以用:
where 字段名称 between 值1 and 值2 ;等价与字段名称>=值1 and字段名称<=值2;
需求,要查询学生年龄是18岁,或者20岁,或者45岁的学生信息
select
*
from
student3