⊗pyPmDBNSr 115 of 129 menu

PythonでのSQLクエリによるレコードの並べ替え

結果の行を並べ替えるには、 ORDER BYコマンドを使用する必要があります。

私たちのテーブルusersからすべての ユーザーを選択し、年齢の昇順で並べ替えましょう:

query = "SELECT * FROM users ORDER BY age"

実行されたコードの結果:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

DESCコマンドを使用して並べ替え順序を変更しましょう:

query = "SELECT * FROM users ORDER BY age DESC"

実行されたコードの結果:

{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}

給与が500のすべてのユーザーを選択し、 年齢の昇順で並べ替えましょう:

query = "SELECT * FROM users WHERE salary=500 ORDER BY age"

実行されたコードの結果:

{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}

1つのフィールドだけでなく、複数のフィールドで並べ替えることができます。 例として、すべてのユーザーを選択し、 最初に年齢の昇順で並べ替え、 同じ年齢のユーザーを給与の昇順で並べ替えてみましょう:

query = "SELECT * FROM users ORDER BY age, salary"

実行されたコードの結果:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

ORDER BYコマンドはLIMITと組み合わせることができます。 この場合、最初に並べ替えコマンドを書き、次にリミットを書く必要があります。 次の例では、最初に年齢の昇順でレコードを並べ替え、 その後最初の3件を取得します:

query = "SELECT * FROM users ORDER BY age LIMIT 3"

実行されたコードの結果:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}

実践問題

すべてのユーザーを取得し、給与の昇順で並べ替えてください。

すべてのユーザーを取得し、給与の降順で並べ替えてください。

すべてのユーザーを取得し、名前順で並べ替えてください。

給与が500のユーザーを取得し、年齢順で並べ替えてください。

すべてのユーザーを取得し、名前と給与で並べ替えてください。

ユーザーを給与の昇順で並べ替え、 並べ替え結果から最初の3人の従業員を取得してください。

ユーザーを給与の降順で並べ替え、 並べ替え結果から最初の3人のユーザーを取得してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否