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

mysqlでランダムな行を選択し、各グループ内で制限します

    したがって、製品タイプごとに7つのランダムレコードが必要です(7 * 12レコード)。一見すると、あなたはただ組合を探しているだけです。

    (SELECT * FROM products WHERE product_type_id=1 AND deleted='n' ORDER BY RAND() LIMIT 7)
    UNION ALL
    (SELECT * FROM products WHERE product_type_id=2 AND deleted='n' ORDER BY RAND() LIMIT 7)
    UNION ALL
    ...
    UNION ALL
    (SELECT * FROM products WHERE product_type_id=12 AND deleted='n' ORDER BY RAND() LIMIT 7)
    

    結果セット全体を注文する必要がある場合は、ORDER BYを使用できます。 UNION全体の後の句 。




    1. JDBCドライバーが正しくインストールされているかどうか、およびDBが接続できるかどうかをテストするにはどうすればよいですか?

    2. PRAGMAEXCEPTION_INITを使用してユーザー定義の例外を宣言する方法

    3. Postgresql SQL GROUP BYの時間間隔(ミリ秒まで)

    4. SQLテーブルで重複する値を見つける方法