とDUPLICATE KEY UPDATE ON私は、次の列でこのテーブルを持っている:INSERT INTOは...複数のキー
id
userid
app
field
value
列「フィールド」と「アプリ」「USERID」に合わせてユニークです。そのため、ユーザーは常に同じ「アプリ」と「フィールド」の値を持つ行が1つしかありません。しかし、彼らは同じ "単に" "同じ"または単に "フィールド"の値が同じ値を持つ行を複数持っています。同じ "userid"を持つ複数の行が常に存在します。
私はどのようにして複数のキーを挿入したり更新したりできるのか分かりません。他の "userid"行や別の "app"や "field"の値を持つ他の行に値を使うことができるので、mysqlではそれらを一意に設定することはできません。
これは可能か、「ユーザーID」、「アプリ」、「フィールド」が挿入または更新したい場所に一致する行が存在するかどうかをまずチェックする必要があります。
また、1つのクエリで1つ以上の行を挿入/更新しようとしています。
update mytable set col1 = @value where (field = @v and [email protected] and userid = @v2)
あなたが必要なフィールドが接合されていることを確認してください「と」と全てが括弧で囲まれています。
あなたはユニーク –
目的として(ユーザーID、アプリ、フィールド)を作成カントMySQLがそれに違反する挿入物を拒否するようになっています。 –
要するに... "userid"、 "app"、 "field"の列を挿入したいのですが、既に同じ値を持つ3行の行がある場合は、その行を更新します。それらのうちの1つが今や別の行マッコを意味するならば、それはそれを挿入するでしょう。 – PixelPaul