数据库复习3

多表查询

select * from 表名1,表名2:笛卡尔积存在,两个表的话性能和子查询貌似是一样的,但如果超过2个表子查询比较高

select * from emp,dept where emp.deptno=dept.deptno;

select * from emp a,dept d where a.deptno= d.deptno;


左右连接

select * from 表名1 left join 表名2 where 表名1.字段1=表名2.字段1


SQL 1999语法

CROSS JOIN

NATURAL JOIN

JOIN USING(列名,比如 deptno)

JOIN ON(emp.deptno=dept.deptno)

LEFT JOIN

RIGHT JOIN


统计函数

COUNT()

AVG()

MAX()

MIN()

SUM()


分组统计

GROUP BY 在where之后并且在order by之前,分组之前肯定需要有数据查到的,因此分析的时候只要先找到数据然后慢慢分组即可

HAVING 用于分组之后的条件,可以用统计函数



子查询

IN 用于返回的是单列多行时子查询

=ANY 等于IN

>ANY 大于任意一个就可以了,同理理解>ALL

<ANY 小于任意一个就可以了,同理理解<ALL


插入

INSERT INTO 表名(列名1,列名2,列名3) VALUES(值1,值2,值3)

更新

UPDATE 表名 SET 列名=值,列名2=值2


删除

DELETE FROM 表名





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值