How to implement in MySQL – update if data exists, add if data does not exist. MySQLでデータが存在する場合は更新し、存在しない場合は追加する方法はどうすればいいですか?

存在すれば更新、存在しなければ追加する操作を実行するには、INSERT…ON DUPLICATE KEY UPDATE文を使用できます。

usersというテーブルがあると仮定し、そのテーブルにはid、name、ageの3つの列が含まれており、idがプライマリーキーであるとします。今、idに基づいてデータが存在するかどうかを判断し、存在する場合はnameとageを更新し、存在しない場合は新しいデータを追加する必要があります。

以下の文章を日本語に自然に言い換えることができます。

INSERT INTO users (id, name, age)
VALUES (1, 'John', 25)
ON DUPLICATE KEY UPDATE name = VALUES(name), age = VALUES(age);

上記の例では、idが1のデータを挿入しようとしています。もし既にそのidが存在する場合は、nameとageの値を’John’と25に更新します。もしidが存在しない場合は、新しいデータを挿入します。

注意:この文を使用する前に、id列にプライマリキー制約またはユニークインデックスを追加して、その一意性を確保してください。

bannerAds