sql >> Database teknologi >  >> RDS >> Mysql

MySQL Update-forespørgsel med venstre deltagelse og gruppe efter

Jeg tager det som (Index1, Index2) er en unik nøgle på Table , ellers ville jeg forvente referencen til t.SpecialEventCount for at resultere i en fejl.

Redigeret forespørgsel for at bruge underforespørgsel, da den ikke virkede ved at bruge GROUP BY

UPDATE
    Table AS t
    LEFT JOIN (
        SELECT
            Index1,
            Index2,
            COUNT(EventType) AS NumEvents
        FROM
            MEvents
        WHERE
            EventType = 'A' OR EventType = 'B'
        GROUP BY
            Index1,
            Index2
    ) AS m ON
        m.Index1 = t.Index1 AND
        m.Index2 = t.Index2
SET
    t.SpecialEventCount = m.NumEvents
WHERE
    t.SpecialEventCount IS NULL


  1. ORA-00001 unik begrænsning overtrådt

  2. ORA-01097

  3. Hvorfor kan jeg ikke ekskludere afhængige kolonner fra "GROUP BY", når jeg samler med en nøgle?

  4. Hvordan administrerer du SQL-forespørgsler