0

ユーザーによって送信された (1,6,3,8,0) のような ID の配列があるとします。それらの一部はテーブルにある場合とない場合があります。テーブルの例は次のとおりです。

id  content
2   ----
3   ----
8   ----
0   ----

ご覧のとおり、3、8、および 0 は入力配列とテーブルにあるため、テーブルにとどまる必要があります。1 は入力配列にありますがテーブルにないため、追加する必要があります。最後に 2 はテーブルにありますが、入力配列に no があるため、削除する必要があります。

php を使用してこの問題を解決できますが、mysql クエリだけを使用してこれを実行できるかどうか疑問に思います。

4

2 に答える 2

0

配列をループし、select count チェックを実行し、存在しない場合は存在するかどうかを確認します。つまり、count<0 の場合、更新または置換を行います。これにより、更新または挿入側が処理されます。素敵でシンプル

配列にない場合の削除の場合、id NOT IN(array) の tbl から削除します

機会があれば、例を挙げて教えてください。

于 2013-01-31T16:45:32.763 に答える
0

あなたがしたいのは、ON DUPLICATE KEY UPDATEを使用したINSERT、またはおそらくINSERT IGNOREのようです(テーブルに既に存在する配列内のアイテムのテーブルの値を変更するかどうかによって異なります)

于 2013-01-31T16:45:34.090 に答える