2016-03-24 8 views
2

私はです。はSQLに新しいもので、PHPを使用してphroidadminからphpmyadminに簡単なクエリを実行しています。ちょっと複雑なクエリで問題が発生していて、正しい構文がわからない場合もあります。userid = x、eventid = xの場合、SQLにyesが設定されています

私がしたい:いいえがある場合はそうそして

  • (この例では、私がYesに更新してしまう)に応じて出席を更新した場合、ユーザは、イベントのエントリを持っていることを

    1. チェック私は1つを挿入したいイベントのエントリ(コードを参照してください)

    Visual

    SELECT * FROM user_has_event 
    IF user_user_id = 1 AND event_event_id = 1 
        THEN 
        SET attendance= 'Yes' 
        ELSE 
        INSERT INTO user_has_event (user_user_id = 1, event_event_id = 1, attendance = 'Yes') 
    

    誰かが私を正しい方向に向けることができますか?

  • 答えて

    1

    あなたはinsert . . . on duplicate key updateたいように見える。このために仕事に、あなたはuser_has_event(user_user_id, event_event_id)に一意索引が必要であることを

    insert into user_has_event(user_user_id, event_event_id, attendance) 
        values (1, 1, 'yes') 
        on duplicate key update attendance = 'yes'; 
    

    は注意(これらの2列の主キーは、同じようにうまく機能)。

    +0

    はい、これは完璧に機能しました。ありがとうございました.D – kmil

    関連する問題