这里有新鲜出炉的Mysql教程,程序狗速度看过来!
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
这篇文章主要介绍了mysql连接查询(左连接,右连接,内连接)的相关资料,这里举例说明如果使用及附实例代码,需要的朋友可以参考下
一、mysql常用连接
- mysql> select * from name_address;
- +----------+------+----+
- | address | name | id |
- +----------+------+----+
- | 西北一路 | 张三 | 1 |
- | 西北二路 | 李四 | 2 |
- | 西北三路 | 王五 | 3 |
- +----------+------+----+
- 3 rows in set
- mysql> select * from name_age;
- +-----+--------+----+
- | age | name | id |
- +-----+--------+----+
- | 18 | 张三 | 1 |
- | 20 | 王五 | 2 |
- | 21 | 路人甲 | 3 |
- +-----+--------+----+
- 3 rows in set
1、INNER JOIN
INNER JOIN与一般的连表查询一致,即使用逗号隔开的查询方式。
- mysql> SELECT a.`name`,a.age,b.address FROM name_age a INNER JOIN name_address b WHERE(on) a.`name`=b.`name`;
- +------+-----+----------+
- | name | age | address |
- +------+-----+----------+
- | 张三 | 18 | 西北一路 |
- | 王五 | 20 | 西北三路 |
- +------+-----+----------+
- 2 rows in set
2、LEFT JOIN
以左边的数据表为准
- mysql> SELECT a.`name`,a.age,b.address FROM name_age a left JOIN name_address b on
- a.`name`=b.`name`;
- +--------+-----+----------+
- | name | age | address |
- +--------+-----+----------+
- | 张三 | 18 | 西北一路 |
- | 王五 | 20 | 西北三路 |
- | 路人甲 | 21 | NULL |
- +--------+-----+----------+
- 3 rows in set
3、RIGHT JOIN
与LEFT JOIN相反,即以右边的数据为准
- mysql> SELECT b.`name`,a.age,b.address FROM name_age a right JOIN name_address b on a.`name`=b.`name`;
- +------+------+----------+
- | name | age | address |
- +------+------+----------+
- | 张三 | 18 | 西北一路 |
- | 王五 | 20 | 西北三路 |
- | 李四 | NULL | 西北二路 |
- +------+------+----------+
- 3 rows in set
来源: http://www.phperz.com/article/17/1024/350384.html