mysql 联合查询 join 用法举例
2015-03-30 19:28
971 查看
■最好在相同字段进行比较操作,在建立好的索引字段上尽量减少函数操作(1).选取最适用的字段属性,应该尽量把字段设置为NOT NULL,这样在将来执行查询的时候,数据库不用去比较NULL值。
(2).使用连接(JOIN)来代替子查询(Sub-Queries)
(3).尽量少使用 LIKE 关键字和通配符
列出所用文章与用户一一对应的数据。
SELECT ... INNER JOIN ... ON 语句如下:
SELECT article.aid,article.title,user.username FROM article INNER JOIN user ON article.uid = user.uid
等同与下面的 SQL 语句:
SELECT article.aid,article.title,user.username FROM article,user WHERE article.uid = user.uid
LEFT JOIN 会取得左表(table1)全部记录,即使右表(table2)并无对应匹配记录。LEFT JOIN 基本语法如下:
... FROM table1 LEFT JOIN table2 ON condition ...
当使用 UNION 时,MySQL 会把结果集中重复的记录删掉,而使用 UNION ALL ,MySQL 会把所有的记录返回,且效率高于 UNION。
查询两张表中的文章 id 号及标题,并去掉重复记录:
SELECT aid,title FROM article UNION SELECT bid,title FROM blog
一个子查询的例子如下:
SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=1)
(2).使用连接(JOIN)来代替子查询(Sub-Queries)
(3).尽量少使用 LIKE 关键字和通配符
列出所用文章与用户一一对应的数据。
SELECT ... INNER JOIN ... ON 语句如下:
SELECT article.aid,article.title,user.username FROM article INNER JOIN user ON article.uid = user.uid
等同与下面的 SQL 语句:
SELECT article.aid,article.title,user.username FROM article,user WHERE article.uid = user.uid
LEFT JOIN 会取得左表(table1)全部记录,即使右表(table2)并无对应匹配记录。LEFT JOIN 基本语法如下:
... FROM table1 LEFT JOIN table2 ON condition ...
当使用 UNION 时,MySQL 会把结果集中重复的记录删掉,而使用 UNION ALL ,MySQL 会把所有的记录返回,且效率高于 UNION。
查询两张表中的文章 id 号及标题,并去掉重复记录:
SELECT aid,title FROM article UNION SELECT bid,title FROM blog
一个子查询的例子如下:
SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=1)
相关文章推荐
- sql语句的联合查询(join 用法)
- mysql操作查询结果case when then else end用法举例
- sql语句的联合查询(join 用法)
- sql联合查询Join的用法.
- mysql操作查询结果case when then用法举例
- mysql操作查询结果case when then else end用法举例
- sql语句的联合查询(join 用法)
- Mysql基本用法-left join、right join、 inner join、子查询和join-02
- 多表联合查询:join的用法
- mysql操作查询结果case when then else end用法举例
- MYSQl left join 联合查询效率分析
- mysql的 join联合查询的通俗解释
- MYSQl left join联合查询效率分析
- MySQL之联合查询join
- sql语句的联合查询(join 用法)
- MySQL联表查询详解/超详细mysql left join,right join,inner join用法分析比较
- MYSQl left join 联合查询效率分析
- Mysql 多表联合查询效率分析及优化
- MySQL JOIN之完全用法
- MYSQL的联合查询问题,难呀。。。。。