MySQL之查询语句

一、前言

今天又学习了一遍sql查询语句,主要是增删改查,还有其他功能的语句,整理到这里。

注意写语句的时候符号一定要用半角,例如逗号,否则·会报错,一定要注意细节

二、内容

1.语句格式

sql语句的格式比较固定,例如

SELECT id,NAME,sex,age FROM student

基本是功能词+要查找的关键词+from+表,非常自然的语言逻辑(和平时说话差不多,感觉和英语的语言逻辑非常像)

2.具体语句

(1)查找(select...from)

-- 查找
SELECT id,NAME,sex,age FROM student 
SELECT * FROM student

基本格式是:select+关键词,关键词+from+表

使用“*”可以代表表中的所有关键词

(2)添加(insert into...)

-- 添加
INSERT INTO student(name,age,sex) VALUES("马十",26,"男")

基本格式是:insert+into+表+(关键词,关键词)+values(内容)

数字可以不加双引号

(3)删除(delete from...)

-- 删除
DELETE FROM student WHERE id = 8

基本格式是delete+from+表+where+关键词+值

(4)修改(update...)

-- 修改
update student set `name`="马千",`age`=26,`sex`="男" where `id` = 8

基本格式是update+表+set+关键词和内容+where+关键词和内容

(5)筛选(用select语句举例)

①where

where是非常常用的筛选词,后面跟上你想要筛选的条件就可以达到筛选的目的

SELECT * FROM student WHERE age=20

这就是一条很基础的筛选语句

②数值运算符
-- > 大于
-- < 小于
-- >= 大于等于
-- <= 小于等于
-- !=   <>  不等于
SELECT * FROM student WHERE age > 20

上面就是SQL中的大于小于号

③逻辑运算符
-- 逻辑运算符 
-- and并且
-- or或者
-- between .. and..  在两个值之间[20,30]
-- in(..,..,..) 包含
SELECT * FROM student WHERE age BETWEEN 20 and 30
SELECT * FROM student WHERE age in(25,26,30)

逻辑运算符就是and和or

当你想进行多条件查询时就用and或者or将不同的条件连接就行

还有两个特殊的between...and...和in(...,...,...)可以快速地进行范围查询

④is null

is null就是判空,下面这条语句就是把关键词age值为空的字段查出来

-- is null ..是空
SELECT * FROM student WHERE age is null
⑤模糊查询 like
-- 模糊查询
-- like为模糊查询,需要配合占位符使用
-- _代表一位字符
-- %代表任意位字符
SELECT * FROM student WHERE name LIKE "张%"

模糊查询就是关键词后面跟上“like”而不是“=”

需要配合占位符使用

⑥分页查询 limit
-- 分页查询
-- limit a,b 限制查询子语句 a代表起始索引值,起始索引值从0开始  b代表查询个数
-- limit b offset a 
-- 如果有其他子语句,limit子语句放在最后
SELECT * from student LIMIT 6,3
SELECT * from student where sex="男" LIMIT 0,3

分页查询就可以控制查询的个数和开始的位置

⑦排序 order by
-- 排序
-- order by 列名 desc(降序)|asc(升序,默认升序,可以省略)
-- 排序子语句的相对位置在where子语句之后,limit子语句之前
SELECT * from student ORDER BY age asc
SELECT * from student ORDER BY age LIMIT 0,3

排序就可以根据关键词来升序降序排序,默认是升序

⑧聚合函数
-- 聚合函数
-- sum求和
-- avg取平均
-- max最大
-- min最小
-- count 取得记录数 不会统计值为null的记录
SELECT avg(age) FROM student
SELECT sum(age) FROM student
SELECT max(age) FROM student
SELECT min(age) FROM student
SELECT count(age) FROM student

非常简洁明了的函数使用

⑨分组函数
-- 分组函数
-- group by 字段名称  分组 分组前用where筛选,分组后用having筛选
SELECT avg(age),class FROM student where sex="男" GROUP BY class HAVING class=1

三、总结

这些SQL查询语句是非常简单甚至通俗易懂的,虽然不复杂,但是需要自己多写多练,可以自己创建一张表来练习这些语句,来达到熟练掌握的效果。

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值