私は列ID、言語ID、日付、タイトル、ArticleContentを持つNewsArticlesというテーブルを持っています。私はの最新の5つのニュース記事をデータベース内の各言語で選択するビューを作成したいと考えています。テーブルの列の特定の値に対して最大N個のレコードを選択するにはどうすればよいですか?
たとえば、英語、フランス語、ドイツ語の3言語がある場合、クエリは15件の最新の英文ニュース記事5件を含む15個のレコードを返します。どのようにしてそのようなクエリを構築できますか?
各のNewsArticlesの一意の言語IDは、降順で並べ替えられた上位5個のレコードを返します。あなたが時間通りに作成された記事とcreatedontime列を持っていると仮定すると
可能であれば、結合を使用することをお勧めします。 –
私はなぜそれを聞かれますか? CTEは非常に強力で、おそらくMSがこれまでにTSQLに追加した最高のものです。 –
@Jakeでは、結合を使用する利点はありません。 @パベルの答えは間違いなくこれを行うための最善の方法です。それは最も速く、最もクリーンで、最も扱いやすいものです。 – IamIC