关于mysql的sql语法

数据表的增删改查的sql语法

1.增加:CREATE

1. 增加单条数据
INSERT INTO student ( 字段1, 字段2,字段3,字段4... )
VALUES (1,值2,值3,值4...);

2.增加多条数据
INSERT INTO student ( 字段1, 字段2,字段3,字段4... )
VALUES (1,值2,值3,值4...),
(1,值2,值3,值4...);

2.修改:UPDATE

UPDATE student SET `字段`='值'    //修改字段的所有值
WHERE id=num;                    //修改增加条件

3.删除:DELETE


DELETE FROM 表名             //清空
WHERE name='张三211';        //增加条件删除

4. 表的查询

select

*,as 可以取别名
,case,
distinct 去重

from

where

=,in,is,is not,>,<,>=,<=,between,like(模糊查询)
,and,or

order by

asc 升序,desc降序

limit(n,m)

n,m 跳过n条数据,取出m条数据

5.联表查询

left join 左连接

与内连接相比,即使没有匹配行,也会返回一个表的全集。

外连接分为三种:左外连接,右外连接,全外连接。对应SQL:LEFT/RIGHT/FULL OUTER JOIN。通常我们省略outer 这个关键字。写成:LEFT/RIGHT/FULL JOIN。

重点:至少有一方保留全集,没有匹配行用NULL代替。

1)LEFT OUTER JOIN,简称LEFT JOIN,左外连接(左连接)

结果集保留左表的所有行,但只包含第二个表与第一表匹配的行。第二个表相应的空行被放入NULL值。

SELECT Students.ID,Students.Name,Majors.Name AS MajorName
FROM Students LEFT JOIN Majors
ON Students.MajorID = Majors.ID

right join 右连接

RIGHT JOIN(right outer join)右外连接(右连接)

右外连接保留了第二个表的所有行,但只包含第一个表与第二个表匹配的行。第一个表相应空行被入NULL值。

右连接与左连接思想类似。只是第二张保留全集,如果第一张表中没有匹配项,用NULL代替

依然沿用内链接的例子,只是改为右连接

SELECT Students.ID,Students.Name,Majors.Name AS MajorName
FROM Students RIGHT JOIN Majors
ON Students.MajorID = Majors.ID

inner join 内连接

INNER JOIN(内连接),也成为自然连接

作用:根据两个或多个表中的列之间的关系,从这些表中查询数据。

注意: 内连接是从结果中删除其他被连接表中没有匹配行的所有行,所以内连接可能会丢失信息。

重点:内连接,只查匹配行。

语法:(INNER可省略)

SELECT fieldlist
FROM table1 [INNER] join table2
ON table1.column=table2.column

6.运行顺序

from -> where -> select -> order by -> limit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值