Mad*_*ada 1 sql sql-server union sql-server-2005
我使用MSSQL 2005进行查询,说:
SELECT * from Emp UNION ALL SELECT * from Emp2;
Run Code Online (Sandbox Code Playgroud)
我想将最终结果限制为10行.如果我只有Emp表,我会说
SELECT TOP 10 * from Emp;
Run Code Online (Sandbox Code Playgroud)
但由于我现在有两张桌子,我不能在任何一张桌子上说SELECT TOP*,最后我也不能使用LIMIT 10.你有什么建议吗?
SELECT TOP 10 * FROM
(SELECT * from Emp UNION ALL SELECT * from Emp2) a
Run Code Online (Sandbox Code Playgroud)
但是,我建议您可以订购结果,这样您就不会从第一个工会结果中获得前10名的结果.所以这样的事情可能是:
SELECT TOP 10 * FROM
(SELECT * from Emp UNION ALL SELECT * from Emp2) a
ORDER BY a.lastName
Run Code Online (Sandbox Code Playgroud)