我目前在存儲過程中有下面的代碼(見下文)。爲了總共返回10個結果,我選出了每個聯盟的前五名。不過,我想參加聯盟的前10名,而不是每個人的5名。有任何想法嗎?這可能嗎?如何在SQL中獲得UNION的前10名結果?
BEGIN
SELECT TOP 5
a_object_ID as [id],
a_object_name as [name],
'A_object' as [Type]
FROM [database].[dbo].[table_a]
WHERE a_object_name LIKE @Search + '%'
UNION ALL
SELECT TOP 5
b_object_ID as [id],
b_object_name as [name],
'B_object' as [Type]
FROM [database].[dbo].[table_b]
WHERE b_object_name LIKE @Search + '%'
ORDER BY [name]
END
爲什麼這有linq-to-sql標記如果你想在SQL中做到這一點? – BrokenGlass 2011-05-09 20:28:51
對不起@BrokenGlass,我刪除了標籤。 – WEFX 2011-05-09 20:29:57