sql >> データベース >  >> RDS >> Mysql

MySQL、PostgreSQL、SQLiteで結果を制限する方法

    問題:

    MySQL、PostgreSQL、またはSQLiteでクエリを実行した結果の行数を制限したい。

    例:

    exam 表には、試験の結果が記載された生徒の名前があります。

    name Exam_result
    Janet Morgen 9
    タヤベイン 11
    アンジョンソン 11
    Josh Kaur 10
    エレンソーントン 8

    最高の試験結果が得られる3行を取得したい。

    解決策:

    SELECT *
    FROM exam
    ORDER BY exam_result DESC
    LIMIT 3;
    

    クエリの結果は次のようになります:

    name Exam_result
    Taya Bain 11
    アンジョンソン 11
    Josh Kaur 10

    ディスカッション:

    まず、exam_resultで行を並べ替えます ORDER BYを使用して降順で列 句とDESC キーワード。次に、ORDER BYの後 句、LIMITを使用します 返したい行数のキーワード(ここでは、3

    ORDER BY exam_result DESC
    LIMIT 3
    

    最良の3行ではなく、ランダムに3行を取得する場合は、ORDER BYをスキップしてください。 一部。

    SELECT *
    FROM exam
    LIMIT 3;
    

    もちろん、必要な数の行を取得できます。 を置き換えるだけです 3希望の番号で。


    1. SQLWHEREステートメント

    2. HikariCP:Oracle11gのmaxLifetimeを設定するために考慮すべきデータベースレベルのタイムアウト

    3. SQL Serverリストテーブル:すべてのテーブルを表示する方法

    4. 最初の実行時にsqliteデータベースをロードできません