将两个表格与显示配对匹配的结果进行比较

时间:2014-09-30 15:15:01

标签: c# sql-server-2008

所以我有两个表,我需要比较数据并生成一个结果集,其中数据对于特定列是相同的,并且数据需要以交替的行显示。例如,在下图中,比较col2和col3,如果它们相同,则它们在结果表中配对。

       table1                   table2                    result

col1    col2    col3      col1    col2  col3        col1    col2   col3

 1      111     222        1      222   333          1      111    222  
 2      222     333        2      333   444          3      111    222
 3      333     444        3      111   222          2      222    333
                           4      222   333          1      222    333
                                                     4      222    333
                                                     3      333    444
                                                     2      333    444

单个sql语句可以实现吗?每个表可以有超过20,000个记录,所以我宁愿不逐行。谢谢!

1 个答案:

答案 0 :(得分:2)

如果col1的顺序不重要,您可以尝试此语句。

select col1, col2, col3
from table1
union
select col1, col2, col3
from table2
order by col2, col3