簡體   English   中英

SQL查詢 - 如果存在則更新,否則插入

[英]SQL query- Update if exists, insert otherwise

我需要為MySQL編寫一個SQL查詢,以便在存在時更新一行,如果不存在則插入。

如果行存在...

UPDATE Table1 SET (...) WHERE Column1='SomeValue'

如果它不存在......

INSERT INTO Table1 VALUES (...)

這可以在一個查詢中完成嗎?

我相信你需要扭轉你的邏輯才能使它工作:

插入表中 - 如果存在(相同的鍵),則更新它。

這可以通過ON DUPLICATE語句實現,如下所示:

INSERT INTO Table1 VALUES(...)
ON DUPLICATE KEY UPDATE column=column+1

這里查看手冊

使用INSERT... ON DUPLICATE KEY UPDATE語法。

請參閱手冊

(為了搜索目的,順便說一下,這通常被稱為“upsert”)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM