SQL(二)数据库 合并表格 |
您所在的位置:网站首页 › sql把两个表合成一个表 › SQL(二)数据库 合并表格 |
我们常常需要把不同表格里的不同列,基于一个共同的列(索引),合并成一张表,这时候就需要JOIN了。
SQL JOIN有四种类型: INNER JOIN:如果表中有至少一个匹配,则返回行 (相当于集合中的交运算)LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行 (包含左表全部内容)RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行 (包含右表全部内容)FULL JOIN:只要其中一个表中存在匹配,则返回行 (相当于集合中的并运算)SQL JOIN 语法: SELECT column_name(s) FROM table1 JOIN table2 ON table1.column_name1=table2.column_name2; 解释:如果table1中的column_name1等于table2中的column_name2,就将从table1、table2中选出来的列合并成一条记录 四种类型: 1、INNER JOIN SELECT Websites.name, access_log.count, access_log.date FROM Websites INNER JOIN access_log ON Websites.id=access_log.site_id ORDER BY access_log.count;其中 ORDER BY 是将合并后的表格按照access_log.count列升序排列 2、LEFT JOIN SELECT Websites.name, access_log.count, access_log.date FROM Websites LEFT JOIN access_log ON Websites.id=access_log.site_id ORDER BY access_log.count DESC;其中 ORDER BY DESC 是将合并后的表格按照access_log.count列降序排列 3、RIGHT JOIN SELECT Websites.name, access_log.count, access_log.date FROM access_log RIGHT JOIN Websites ON access_log.site_id=Websites.id ORDER BY access_log.count DESC; 4、FULL OUTER JOIN SELECT Websites.name, access_log.count, access_log.date FROM Websites FULL OUTER JOIN access_log ON Websites.id=access_log.site_id ORDER BY access_log.count DESC; 注意: 1、INNER JOIN 与 JOIN 是相同的。 2、在某些数据库中,LEFT JOIN 称为 LEFT OUTER JOIN。(如SQL SEVER) 3、在某些数据库中,RIGHT JOIN 称为 RIGHT OUTER JOIN。(如SQL SEVER)
参考: [1] http://www.runoob.com/sql/sql-distinct.html [2] http://www.w3school.com.cn/sql/sql_distinct.asp |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |