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

MySQL:グループ化ごとにx個の結果を取得する方法

    このクエリを試してください-

    SELECT item_id, item_name, catid FROM 
      (SELECT t1.*, COUNT(*) cnt FROM items t1
        LEFT JOIN items t2
          ON t2.catid = t1.catid AND t2.item_id <= t1.item_id 
      GROUP BY
        t1.catid, t1.item_id
      ) t
    WHERE
      cnt < 6
    -- LIMIT 20
    

    カテゴリごとに最初の5つのアイテムが表示されます。 LIMIT 20のコメントを外します 必要に応じて。 Categoriesに参加する 必要に応じてテーブル。



    1. 米国の郵便番号の境界座標を取得するにはどうすればよいですか?

    2. このCOUNTMySQLステートメントの不明な列エラー?

    3. SQLサーバースキーマとデフォルトスキーマ

    4. SQLiteAssetHelperクラスを使用してデータベースをコピーできません