AI智能
改变未来

MySql DQL,数据查询语言(一)


数据查询语言

基本查询

查询的基本语句是 select * from 表名查询所有列
select 指定列段名 from 表名查询指定列

别名

别名的设置 指定列段名后面加上定义名
列的别名(1、两个有相同的列段的时候;2、后续要使用这个列段的时候)
实例
sleect 字段名 定义名 from 表格

+

MySQL中“+”号的作用,只作用运算

当字符串与数值相加时会把字符串转换成数字,不能转换就变为空

concat 将多个字符串连接成一个字符串。

MySQL的版本查询

select version();

去重

关键字distinct
语法select distinct 字段名 from 表名

降序以及升序

MySQL默认为升序 倒序关键字为 order by asc,加上order by desc为降序 order by为必要条件

过滤以及排序

语法

select * from 表名 where 条件(Boolean表达式)

=,<,>,<>,等符号

简单的使用,与其它语言一样。<>可以看为不等于

and or not…

和 或 非 的意思

模糊查询筛选

关键字:like % _三个重要字段,like为必备,%表示零或多个字符 _表示单个字符


特殊地当要查找_的存在时,要是用
escape $符号代表任意符号

区间查询筛选

关键字:between…and… 关键字前要放查找区间所在的字段名

列表筛选查询

关键字:in() 关键字前要放查找区间所在的字段名括号内放查找目标

等值筛选查询

is null或者is not null 两种 判断是不是为空值

“=” 符号的运用,与in相似

分组

组函数

sum/avg/max/min/count的使用

group by

1、查询的列段一定要跟分组的列段相关
2、虽然很多情况下,where使用与having使用的结果是一样的,但是会有不一样的情况

多表查询

笛卡尔集

一定要避免笛卡尔集
笛卡尔积在SQL中的实现方式既是交叉连接(Cross Join)。所有连接方式都会先生成临时笛卡尔积表,笛卡尔积是关系代数里的一个概念,表示两个表中的每一行数据任意组合,上图中两个表连接即为笛卡尔积(交叉连接)

在实际应用中,笛卡尔积本身大多没有什么实际用处,只有在两个表连接时加上限制条件,才会有实际意义,

多表查询

实际使用案列以及where 与having的使用

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » MySql DQL,数据查询语言(一)