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

特定の行を返すためのSQL自己結合

    SELECT  mm.*, md.label AS standardized_label
    FROM    mytable md
    LEFT JOIN
            mytable mc
    ON      mc.parent_element = md.id
            AND mc.client = @client
    JOIN    mytable mm
    ON      mm.id = COALESCE(mc.id, md.id)
    WHERE   md.client IS NULL
    

    (client, parent_element)にインデックスを作成します これが速く機能するために。

    SQLFiddle を参照してください。 。




    1. 接続付きのJavaMysqlクエリデータベース

    2. Flywayのプレースホルダー式を無視するにはどうすればよいですか?

    3. mysql float列にxxを追加すると、間違った結果になります。バグですか?

    4. 新しく割り当てられたシーケンスが機能していません