添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

sqlserver两张表联合查询排序

在 SQL Server 中,可以使用 UNION ALL 操作符将两个表的结果合并成一个结果集,并使用 ORDER BY 子句对结果集进行排序。下面是一个示例 SQL 查询语句:

SELECT col1, col2, col3 FROM table1
UNION ALL
SELECT col1, col2, col3 FROM table2
ORDER BY col1 DESC, col2 ASC;

其中,table1table2 分别表示要查询的两个表,它们必须具有相同的列数和相似的数据类型。col1col2col3 分别是要查询的列名,它们可以是不同的列名。在 ORDER BY 子句中,col1 DESC 表示按照 col1 列的降序排序,col2 ASC 表示按照 col2 列的升序排序。

如果需要去重,可以使用 UNION 操作符,它会自动去除重复的行。如果需要对两个表进行不同的排序,可以将它们作为子查询,然后在外层查询中进行排序。例如:

SELECT * FROM (
    SELECT col1, col2, col3 FROM table1
    UNION
    SELECT col1, col2, col3 FROM table2
) AS t
ORDER BY col2 DESC, col1 ASC;

在这个示例中,使用 UNION 操作符去重,并将两个子查询合并成一个子查询 t,然后在外层查询中对 t 进行排序。

  •