declare @userid int
set @userid=9846
SELECT TOP 10
tagid,
[Description]
FROM tagsuggestion
WHERE tagid IN (SELECT **DISTINCT** TOP 10 tagid
FROM (SELECT ulpt.tagid,
createddate
FROM userlocationposttag ulpt
WHERE [email protected]
UNION ALL
SELECT ult.tagid,
createddate
FROM userlocationtag ult
WHERE [email protected]
UNION ALL
SELECT upt.tagid,
createddate
FROM userprofiletag upt
WHERE [email protected]
) T
ORDER BY createddate DESC)
上記のクエリはエラーです。SELECT DISTINCTが指定されている場合、ORDER BY項目はSELECTリストに表示される必要があります。SELECT DISTINCTが指定されている場合は、ORDER BY項目が選択リストに表示されます。
.but私はDISTINCTを削除する場合は、このクエリは、私が明瞭性を確保したいと私はまた私の関連する記事の一つは
あるCreatedDateにDESCによってソート順序を維持したい
を実行します
Last created 10 records from all of the 3 tables
」ORDERは表示されません必要がありますSELECT DISTINCTが指定されている場合は選択リストにあります。 " - あなたが言ったように、** DISTINCT **を削除すると、このフレーズは適用されなくなります...(Yが指定されている場合はXが必要です。 Yを削除しました) –
また、どのバージョンのSQL Server? –
あなたの最初の質問はあなたの*実際の問題のために誤解を招いていましたか? – gbn