300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Mysql 使用商城表完成对商品信息的多表查询

Mysql 使用商城表完成对商品信息的多表查询

时间:2018-08-27 14:28:17

相关推荐

Mysql  使用商城表完成对商品信息的多表查询

### 使用商城表完成对商品信息的多表查询

#### 需求分析:

在商城项目中,我的订单中包含很多信息.打开订单需要去查询表

#### 技术分析:

#### 多表查询

- 交叉连接查询 笛卡尔积

- 内连接查询

- 左外连接

- 右外连接

注:inner和outer关键字可省可不省.

- 交叉连接查询 笛卡尔积SELECT * FROM product;SELECT * FROM category;笛卡尔积 ,查出来是两张表的乘积 ,查出来的结果没有意义SELECT * FROM product,category;--过滤出有意义的数据SELECT * FROM product,category WHERE cno=cid;SELECT * FROM product AS p,category AS c WHERE o=c.cid;[使用as关键字]SELECT * FROM product p,category c WHERE o=c.cid;[不使用as关键字]--数据准备INSERT INTO product VALUES(NULL,'耐克',10,NULL);- 内连接查询-- 隐式内链接SELECT * FROM product p,category c WHERE o=c.cid;-- 显示内链接SELECT * FROM product p INNER JOIN category c ON o=c.cid;[使用inner关键字]SELECT * FROM product p JOIN category c ON o=c.cid;[不使用inner关键字]-- 区别:隐式内链接: 在查询出结果的基础上去做的WHERE条件过滤显示内链接: 带着条件去查询结果, 执行效率要高- 左外连接左外连接,会将左表中的所有数据都查询出来, 如果右表中没有对应的数据,用NULL代替SELECT * FROM product p LEFT OUTER JOIN category c ON o=c.cid;[使用outer关键字]SELECT * FROM product p LEFT JOIN category c ON o=c.cid;[不使用outer关键字]- 准备工作INSERT INTO category VALUES(10,'电脑办公','电脑品牌都在这');- 右外连接: 会将右表所有数据都查询出来, 如果左表没有对应数据的话, 用NULL代替SELECT * FROM product p RIGHT OUTER JOIN category c ON o=c.cid;[使用outer关键字]SELECT * FROM product p RIGHT JOIN category c ON o=c.cid;[不使用outer关键字]

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。