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

Syntaksfejl i MySQL PÅ DUBLIKAT NØGLEOPDATERING

INSERT INTO ExtraStats (
    DATE
    , supportStaff
    , startEmails
    , endEmails
    , emailsAnswered
    )
VALUES (
    '$startDate'
    , '$supportStaff'
    , '$startEmail'
    , '$endEmail'
    , '$emailAnswered'
    )
    ON DUPLICATE KEY

UPDATE 
        supportStaff = '$supportStaff'
        , startEmails = '$startEmail'
        , endEmails = '$endEmail'
        , emailsAnswered =  '$emailAnswered'

Du kan også bruge VALUES() funktion, så du ikke sender værdierne to gange:

    ...
    ON DUPLICATE KEY    
UPDATE 
          supportStaff = VALUES(supportStaff)
        , startEmails = VALUES(startEmails)
        , endEmails = VALUES(endEmails)
        , emailsAnswered = VALUES(emailsAnswered)


  1. hvordan opdeles en tabel efter dato og klokkeslæt kolonne?

  2. Mysql bygger dynamisk forespørgselsstreng i en lagret procedure baseret på logik

  3. LocalDB-implementering på klient-pc

  4. Indsæt den samme faste værdi i flere rækker