二级MYSQL的语法整理_MySQL语法整理

一、基本语句

(大写的代表固定语句,小写的代表自己命名部分)

1. 数据库部分

增:CREATE DATABASE database_name;

删:DROP DATEBASE database_name;

用:USE database_name;

2. 数据表部分

增:CREATE TABLE table_name ( field1 field1_type, field2 field2_type,...fieldN fieldN_type);

删:DROP TABLE table_name;

3. 数据部分

增:INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN );

删:DELETE FROM table_name WHERE Clause;

改:UPDATE table_name SET field1=new_value1, field2=new_value2 WHERE Clause;

查:SELECT field1,field2 FROM table_name WHERE Clause;

二、常用短语

案例表:student

2d183c1c99f85eada0409a0561e85117.png

teacher

153dd4b60e4d28a17ddae603d2954a76.png

1. LIKE:用于做字符匹配,后面跟‘后面跟匹配条件’,‘%’代表一个通配符

通配符匹配规则:(条件没有通配符而是具体值的,LIKE 相当于 '=')

55dbee99506dea36b170c8f1719cb6c2.png

写法:SELECT field FROM table_name WHERE field LIKE condition1;

示例:选出所有姓张的学生

SELECT * FROM student WHERE name LIKE '张%';

3633c7f605b9644985c03bad5bafa34a.png

2. UNION:用于做集合,连接两个 SELECT 语句得到的字段,得到一张新表显示出来。两边的字段数目必须相同

写法:SELECT field1 FROM table_name1 WHERE Clause1 UNION field2 FROM table_name2 WHERE Clause2;

示例:查找所有男老师和男学生的名字和地址

SELECT name,address FROM teacher WHERE gender='男' UNION SELECT name,address FROM student WHERE gender='男';

7b6cc5139cc9a84bee78340ccec12028.png

3. ORDER BY:用于做排序,根据某个字段的值为数据排序

写法:SELECT field FROM table_name ORDER BY field;

示例:从低到高显示学生成绩

SELECT * FROM student ORDER BY score;

补充:ORDER BY 默认是升序(ASC),如果想要降序(DESC),后面需要加上 DESC

示例:从高到低显示学生成绩

SELECT * FROM student ORDER BY score DESC;

3528f96b6eb6502c7f644352cabf83ad.png

4. GROUP BY:用于做分组,根据一个列或多个列的结果进行分组,结果一样的分为同一组,常搭配 COUNT() 使用

写法:SELECT field, function() FROM table_name WHERE Clause GROUP BY field;

示例:按学生性别进行分组,并进行人数统计

SELECT gender,COUNT(*) FROM student GROUP BY gender;

0e7d128ed737d07edf0fed6711eec57b.png

5. JOIN:用于做连接,从多个表里读取数据,得到一张新表显示出来,常搭配 ON 使用,用 a 表示左表,b 表示右表。一共有三种连接方式

(1)INNER JOIN(内连接):获取两个表中字段匹配关系的记录(默认 INNER 可省略)

f225f6ee213ad317bf8948bd1481e4de.png

写法:SELECT a.field,b.field FROM table_name1 a JOIN table_name2 b ON Clause;

示例:查找地址一样的老师和学生的名字

SELECT a.name,b.name,a.address FROM student a JOIN teacher b ON a.address=b.address;

babb47f0e1da43abd668ec80b0362a7f.png

(2)LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录

1ae9c97add9cfa2cf041d346567af52f.png

(3)RIGHT JOIN(右连接):获取右表所有记录,即使左表没有对应的匹配记录

3d8218e01a9370bdc6d53574c55958f0.png

6. IS NULL:用于判断字段是否为空,空返回 true,不空返回 false

写法:SELECT field FROM table_name WHERE field IS NULL;

示例:查看没有填地址的老师(注意 null 不是空白)

SELECT * FROM teacher WHERE address IS NULL;

785b0c0c3d6f23b9a5f2dc796d8d7a4a.png

三、常用函数

函数没有什么好讲的+不重复造轮子+写得没别人好=直接贴链接:https://blog..net/sinat_38899493/article/details/78710482

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值