MySQL学习:DQL

DQL查询数据

(Data Query Language : 数据库查询语句)

select

基本操作:

  1. 查询所有
    select * from 表名
  2. 查询指定字段
    select 字段 from表名
  3. 起别名(可以给字段起别名,也可以给表起别名)
    select 字段 as 别名 , 字段 as 别名 from 表名 as 别名
  4. 函数 concat(a,b)(将 a , b 拼接起来)
    select concaat(a,b) from 表名

去重 distinct :
select distinct 字段 from 表名


模糊查询:比较运算符

运算符含义
IS NULL是否为空
IS NOT NULL是否不为空
BETWEEN…AND…在…之间…
LIKESQL匹配,如果匹配成功则为真
IN如果在其中某一个值,则为真

联表查询 : join

思路:

  1. 分析需求 分析需要查询的字段来自哪款表
  2. 确定使用哪种连接查询
  3. 确定交叉点
  4. 确定判断条件

语句:
select 数据
from 表名
[left,right,inner] join 表名
on 条件

分为七种
七种join查询


SQL中ON和WHERE的区别
数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。
在使用left jion时,on和where条件的区别如下:
1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。
2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。

** on是笛卡尔积,where是筛选条件,对于内连接来说并无太大区别,但对于左右连接,on会把一方的都拿进来,where则会进行过滤 **

操作描述
inner join如果表中至少有一个匹配,则返回行
left join会从左表中返回所有值,及时右表中没有匹配
rightjoin会从右表中返回所有值,及时左表中没有匹配

自连接
将一张表做两张表看
自连接


分页 limit 和 排序 order by

排序 : 升序 ASC , 降序 DESC

limit 数据起始下标 一页数据量


常用函数






分组 group by 字段
分组后不能用where进行筛选
要用having 条件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值