简单的sql查询

一般的工作中不会涉及到太难得sql查询语句,无非是多表关联查询,多表关联主要有三种查询方式
(一)内连接查询
内连接查询,是查询出两张表中必然有关联的数据,没有关联的数据不能查询出
语法:select 字段 from 表1 inner join 表2 on 条件
示例:查询出商品的信息和商品所属的类别信息
select * from product p inner join category c on p.cid=c.cid

隐式内连接:select 字段 表1,表2… where 条件
示例:查询出商品的信息和商品所属的类别信息
select * from product p,category c where p.cid=c.cid
(二)外连接
左外连接,是查询出左表的全部内容,右表中只查出与左表有关联的数据
语法:select 字段 from 左表 left [outer] join 右表 on 条件
示例:查询出所有的类别信息,如果该类别有商品则一并查出
select * from category c left join product p on c.cid=p.cid;

右外连接,是查询出右表的全部内容,左表中只查询出与右表有关联的数据
语法:select 字段 from 左表 right [outer] join 右表 on 条件
示例:查询出所有的类别信息,如果该类别有商品则一并查出
select * from product p right join category c on c.cid=p.cid;
(三)子查询
个人认为子查询就是先使用sql查询出来需要的数据值,让后将这条sql当作该值放进需要查询的sql语句中。
示例:查询商品价格大于总商品平均价格的商品
分步骤查:
查询平均价格:select avg(price) from product;
查询商品信息:
select * from product where price>2299;
使用子查询:
select * from product where price>(select avg(price) from product);
也就是select avg(price) from product;相当于是2299.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值