0

テーブルに値を挿入したいのですが、最後の行に値が存在するかどうかを確認する必要があります。私は通常、次のような値を挿入します

INSERT INTO `table` (`column1`,`column2`,`column3`,`column4`) VALUES ('value1','value2','value3','value4')

しかし今、チェックを入れる必要があります.value1がテーブルの最後の行に存在する場合は挿入されません.そうでない場合は挿入されます.

そのために私は使用しようとしています

WHERE NOT EXISTS

値が存在する場合、テーブルの最後の行を実際に確認したいのですが、重複してはいけません。

4

4 に答える 4

1

テーブルの主キーが既に存在する場合に何が起こるかを明示的に述べることができます。例:

INSERT INTO table (...) VALUES (...) ON DUPLICATE KEY UPDATE
于 2012-06-01T08:47:56.290 に答える
0

余談ですが、ドキュメントによると、WHERE NOT EXISTS選択では、フィールド(この場合はvalue1、value2)を指定する必要はありません。これは、完全に無視されるためです。したがって、*を使用してください

いずれにせよ、これはあなたの質問に答えると思います: MySQLに「存在しない場合は挿入する」方法は?

于 2012-06-01T08:39:22.907 に答える
0

サブセレクトの別名。MySQL では必須です。

于 2012-06-01T08:37:48.503 に答える
0

ペア (列 1、列 2) に一意の制約を追加することは、それを行うためのより良い方法ではありませんか?

于 2012-06-01T08:41:55.783 に答える