質問: oracleでのmerge文のようなもの、ないのでしょうか・・・ いつもお世話になります。 主キーで検索して、あればupdate、なければinsert という処理を行うにあたって、行の挿入と更新を 1回のsqlで行いたいのですが、oracleでいうmerge文のようなものはmysqlではないのでしょうか?? 1回で行いたい理由としては、有り無しの調査をしてからinsertするまでの間に他ユーザーが同時実行をして主キー重複が起きないようにです。 マニュアルを見た所、見あたらなかった為、普通にinsert時のエラー処理で、再試行をしようと思っておりますが、皆様どうされてますでしょうか? 他に良い方法があればと思い、投稿させていただいております。 ご教示いただけると嬉しいです。
回答: プライマリーで判断してよいのであれば、replaceでやるとよいでしょう。 http://dev.mysql.com/doc/refman/4.1/ja/replace.html