mysql联结操作符_MySQL
程序员文章站
2022-06-17 07:53:32
...
bitsCN.com
mysql联结操作符
1、逗号关联操作符的效果与INNER JOIN相似:
[sql]
select t1.*,t2.* from t1, t2 where t1.i = t2.i;
等价于:
[sql]
select t1.*,t2.* from t1 INNER JOIN t2 where t1.i = t2.i;
注意,逗号关联操作符的优先级和其他联结类型不一样,有时还会导致语法错误,而其他联结操作符没有这个问题。应尽量避免使用逗号操作符。
2、using()子句:它在概念上类似on子句和where,但是要求被联结的列必须是同名的。
如:
[sql]
select t1.*,t2.* from t1 inner join t2 using(i);
等价于:
[html]
select t1.*,t2.* from t1 inner join t2 on t1.i =t2.i;
3、如何消除自联结(也就是把一个数据表与它本身联结起来)。
这个时候需要用到别名,如:
[sql]
select m1.name,m2.name from mytable as m1 inner join mytable as m2 where m1.name = m2.name
4、有关左联结和右联结(外联结)
内联结只能显示在两个数据表里都能找到的数据行。外联结除了显示了同样的结果,还可以把其中一个数据表在另一个数据表里面有匹配的数据行也显示出来。左联结把左数据表在右数据表里没有匹配的数据行也显示出来。右边表里没有的数据会显示NULL。
bitsCN.com推荐阅读
-
mysql load data infile 命令的数据导入
-
New Release Webinar on May 13th: Introducing ClusterControl_MySQL
-
php+mysql第一条数据无法显示的原因和解决方法
-
Ubuntu 下 nginx , php , mysql 和 golang 的简单安装
-
编译安装PHP出现configure: error: mysql configure failed. Plea_PHP教程
-
devstack安装使用openstack常见问题与解决办法_MySQL
-
MySQL更新数据之前是否判断数据有没有被修改
-
select-mysql中如何在查询所有字段的同时对其中一字段进行转换
-
用perl做数据库迁移,从MSSQL到MYSQL(三)
-
Host '127.0.0.1' is not allowed to connect to this MySQL server