拓展閱讀 MySQL View MySQL truncate table 與 delete 清空表的區別和坑 MySQL Ruler mysql 日常開發規範 MySQL datetime timestamp 以及如何自動更新,如何實現範圍查詢 MySQL 06 mysql 如何實現類似 oracl ...
拓展閱讀
MySQL truncate table 與 delete 清空表的區別和坑
MySQL datetime timestamp 以及如何自動更新,如何實現範圍查詢
MySQL 06 mysql 如何實現類似 oracle 的 merge into
MySQL 05 MySQL入門教程(MySQL tutorial book)
MySQL 04- EMOJI 表情與 UTF8MB4 的故事
MySQL Expression 1 of ORDER BY clause is not in SELECT list,references column
mysql 中 insert into tableName values() ON DUPLICATE KEY update time=now() 啥意思
在 MySQL 中,INSERT INTO
語句用於向表中插入新的行數據。語法如下:
INSERT INTO tableName (column1, column2, ...)
VALUES (value1, value2, ...)
上述語句中,tableName
是表的名稱,column1, column2, ...
是要插入的列名,value1, value2, ...
是要插入的對應列的值。
而 ON DUPLICATE KEY UPDATE
子句是用於在插入數據時,當遇到主鍵或唯一索引衝突時,執行更新操作。這樣可以避免插入重覆的數據,而是更新已存在的行。
在你提供的例子中,ON DUPLICATE KEY UPDATE time=now()
的意思是,當插入數據時,如果出現主鍵或唯一索引衝突,將會更新已存在行中的 time
列為當前的時間戳(使用 now()
函數獲取)。
所以,這個語句的含義是:如果要插入的數據在表中已存在(根據主鍵或唯一索引判斷),則更新已存在行的時間列為當前時間;如果數據不存在,則插入新的行數據。
參考資料
https://github.com/jaywcjlove/mysql-tutorial