如何从多个表中获取最大值

时间:2010-09-03 06:51:36

标签: sql-server-2005

我有如下表格结构

Table1
-------
Id SessionNo
1  1
2  2
3  2

Table2
-------
Id SessionNo
1  1
2  3
3  3

Table3
-------
Id SessionNo
1  1
2  3
3  4

从这三个表中我需要输出为

SessionNo 4

请给我一个查询

2 个答案:

答案 0 :(得分:4)

SELECT MAX(maxNo)
FROM (
    SELECT MAX(SessionNo) maxNo FROM Table1
    UNION
    SELECT MAX(SessionNo) maxNo FROM Table2
    UNION
    SELECT MAX(SessionNo) maxNo FROM Table3
) r

答案 1 :(得分:2)

可能的解决方案是(如果是最好的话,不知道)。

select max(SessionNo) 
from    
  ( 
     select SessionNo
     from Table1
     union all
     select SessionNo
     from Table2
     union all
     select SessionNo
     from Table3
  )