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

結果がない場合、MySqlはデフォルト値を選択しますか?

    ユーザーとそのランキングだけが必要な場合に、SELECTリストにcomment_idを含める理由がわかりません。その特定のコメントに対する彼らのランキングだけが欲しいですか?今のところ、ランキング付きの完全なメンバーリストが必要であると想定したソリューションを提供します:

    SELECT
        M.member_id,
        M.user_id,
        M.avatar,
        COALESCE(SUM(C.vote_value), 0) AS vote_value_sum,
        COALESCE(SUM(C.best), 0) AS best_sum,
        COALESCE(SUM(C.vote_value), 0) + SUM(C.best) * 10 AS total_value
    FROM
        Members M
    LEFT OUTER JOIN Comments C ON
        C.author_id = M.member_id
    GROUP BY
        M.member_id
    ORDER BY
        total_value DESC
    LIMIT 0, 20
    

    (これは、vote_valueとbestがNULL列ではないこと、またはMySQLがSUM値を計算するときにそれらを無視することを前提としています-そうだと思いますが、テストしていません)



    1. JDBCでストアドプロシージャを呼び出す方法

    2. 列から不要な文字を削除する

    3. Firebaseの概要

    4. Liquibaseでデータベースを作成する方法