首页 > 数据库 > MySQL > 正文

mysql中UNION进行多表查询的注意事项

2024-07-24 12:35:23
字体:
来源:转载
供稿:网友
  多表查询我们有很多的方法union就是其中的一种了,但大家知道不知道union多表查询时要注意的一些事项呢?如果不懂和小编来看看吧.
 
  假设有两个字段完全一致的表,table1和table2,字段分别为password,username,email.
 
  则使用UNION(或UNION ALL)进行多表查询的基本方法就是简单的连接:
 
   SELECT password,username,email
   FROM  
   table1  
   where username like '123'  
  --phpfensi.com
   UNION ALL //或用UNION以去除重复数据
  
   SELECT password,username,email
   FROM  
   table2  
   where username like '123'
  但是,如果表与表的字段不同,有重叠却不完全一致,就不是简单地用UNION来连接即可了.
 
  要UNION两个或多个表,必须满足的条件就是这些表的字段都一样,为了满足这个条件,可以用","来代替缺少的字段.
 
  例如:table1中有字段password,username,email,ip;table2中有字段password,username,则查询方法如下:
 
    /**
     * mysql union
     * coder: xiaohudie
     * Jan 2015
     */
  SELECT password,username,email,ip  
  FROM  
  table1  
  where username like '123'  
  -phpfensi.com
  UNION ALL
  
  SELECT password,username,',',','   
  FROM  
  table2  
  where username like '123'  
  以此类推.
 
 

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表