ホームページ >データベース >mysql チュートリアル >ROW_NUMBER() を使用して SQL で各グループの最初の行を選択する方法
各グループのレコードの最初の行を取得します
SQL では、各一意のグループの最初のレコードを取得するのが一般的なタスクです。 SM_Employee と SM_SalesRepWorkflow という 2 つのテーブルがあるこの状況を考えてみましょう。これら 2 つのテーブルを結合することにより、SM_SalesRepWorkflow から現在の月と年の各営業担当者の情報の最初の行を SalesRepId で並べ替えて選択します。
これを実現するには、ROW_NUMBER() 関数の機能を利用できます。クエリの詳細な説明は次のとおりです:
<code class="language-sql">SELECT * FROM( SELECT workflowid, salesRepId, quantityAssigned, quantityLeft, month, year, ROW_NUMBER() OVER (PARTITION BY salesRepId ORDER BY workflowid) AS rownumber FROM sm_salesRepWorkflow ) WHERE rownumber = 1;</code>
ROW_NUMBER() 関数を使用すると、指定された条件を守りながら、各営業担当者の最初のレコードを効率的に選択できます。この手法は、グループ化して各グループの最初の行を選択する必要があるさまざまなシナリオで役立ちます。
以上がROW_NUMBER() を使用して SQL で各グループの最初の行を選択する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。