文章目录
- DQL 语句
- 简单查询
- 查询表所有数据
- 查询指定列
- 别名查询
- 清除重复值
- 查询结果参与运算
????作者主页:点击!
????Mysql专栏:点击!
⏰️创作时间:2024年11月16日11点39分
DQL 语句
DQL 语句数据查询语言,用来查询数据库中表的记录,关键字 select、where 等
并且只运用于查询数据,对数据造成不了任何影响,只是一种显示方式的改变
简单查询
对数据表的数据进行简答的查询
查询表所有数据
1、使用 * 表示所有列
select * from xxxx(表名);
**实例:**select * from feng_sir
2、写出查询每列的名称
select 字段1,字段2,字段3… from 表名;
**可以指定输出的内容例如:**select name from feng_sir // 指定只输出的内容,虽然说有点麻烦但是效率比较高
查询指定列
查询指定列的数据,多个列之间以逗号分离
select 字段1,字段2 from 表名;
**具体操作:**mysql> select name,age from feng_sir;
别名查询
查询时给列、表指定别名需要使用 AS 关键字
使用别名的好处就是方便观看和处理查询到的数据:
使用方法:select 字段名1 AS 别名 字段名2 AS 别名… from 表名;
注意:AS 可以忽略不写,别名可以是中文
作为一种显示优化的作用
具体操作
查询 feng_sir 表中 name 列和 age 列,name 列为姓名,age 列为年龄
**案例:**select name as 姓名 , age as 年龄 from feng_sir;
**实例:**mysql> select name as 姓名, age as 年龄 from feng_sir; // 将 name 显示为 姓名,age 显示为 年龄
清除重复值
查询指定列并且结果不出现重复数据,我感觉用处不是很大
select distinct 字段名 from 表名; // 去除字段名 xxx 里面重复的数据,前提是相同的数据
mysql> insert into feng_sir values(9,‘黎明’,31,‘女’,‘重庆市’,‘10000000000’,‘2021-08-29’,99,88);
补充数据
具体操作
查询 name age 列并且结果不出现重复 name
mysql> select distinct name,age from feng_sir; // 去除字段名里面 name age 中重复的值, 前提是相同的数据
查询结果参与运算
需求:
查询的时候将数学和英语的成绩相加
让学院的年龄增加 10 岁
1、某列数据和固定值运算
select 列名1 + 固定值 from 表名;
2、某列数据和其他列数据参与运算
select 列名1 + 列名2 from 表名;
参与运算的必须是数据类型
实际操作:
查询 math + english 的和
多种方法
mysql> select math + english from feng_sir; // 查询成功
mysql> select math+english 总成绩 from feng_sir; // 使用别名进行显示优化,as 可加可不加
mysql> select id,name,age,sex,address,math,english,math+english 总成绩 from feng_sir; // 更加高级的显示结果
mysql> select *,math+english 总成绩 from feng_sir; // 和上面显示结果相似,显示全部内容,并且计算总成绩
让指定的列 整体加 10 只是在查询的时候对数据进行改变,不影响源文件的数据
mysql> select id,name 姓名,age+10 年龄,sex 性别 from feng_sir; // 结果会显示年龄全部都加了十岁