MySQL中的insert set 和 insert values用法
insert set 和 insert values用法
insert values
- 優(yōu)點:可以批量插入;
- 缺點:單條執(zhí)行效率低。<適合批量插入>
insert into table(col1,col2,col3) values('val1','val2','val3');insert set
- 優(yōu)點:執(zhí)行效率高;
- 缺點:每次只能插入一條數(shù)據(jù)。<適合單條插入>
insert into table set col1='val1',col2='val2',col3='val3';
mysql 語法 insert into set
MySQL 對于不同種類的日期和時間有很多的數(shù)據(jù)類型,比如YEAR和TIME。如果只需要記錄年份,則使用YEAR類型即可;如果只記錄時間,只需使用TIME類型。如果同時需要記錄日期和時間,則可以使用TIMESTAMP或者DATETIME類型。
由于TIMESTAMP 列的取值范圍小于DATETIME的取值范圍,因此存儲范圍較大的日期最好使用DATETIME.
- TIMESTAMP 也有一個DATETIME 不具備的屬性。
- 默認(rèn)的情況下,當(dāng)插入一條記錄但并沒有指定TIMESTAMP 這個列值時, MySQL會把TIMESTAMP列設(shè)為當(dāng)前的時間。
- 因此當(dāng)需要插入記錄同時插入當(dāng)前時間時,使用TIMESTAMP是方便的,另外TIMESTAMP在空間上比DATETIME 更有效。
《當(dāng)需要插入記錄同時插入當(dāng)前時間時,使用TIMESTAMP是方便的》
理解了一下這句話的含義,百度查了一下mysql支持這樣的語法, insert into set
mysql> insert into tmp14 values(1); ERROR 1136 (21S01): Column count doesn't match value count at row 1 mysql> insert into tmp14 set id=1; Query OK, 1 row affected (0.00 sec) ? mysql> select * from tmp14; +------+---------------------+ | id ? | td ? ? ? ? ? ? ? ? ?| +------+---------------------+ | ? ?1 | 2022-03-31 16:28:07 | +------+---------------------+ 1 row in set (0.00 sec)
在mysql5.7中無法設(shè)置為兩個列設(shè)置為timestamp類型。
mysql> create table tmp14(id int,td timestamp,td2 timestamp); ERROR 1067 (42000): Invalid default value for 'td2' ? mysql> alter table tmp14 add column td2 timestamp; ERROR 1067 (42000): Invalid default value for 'td2'
insert into set語法在postgresql中是不支持的。
[txadmin@node2 ~]$ psql ? txdb_default=# create table tmp14(id int,td timestamp); CREATE TABLE txdb_default=# ?insert into tmp14 set id=1; ERROR: ?syntax error at or near "set" 位置: ?insert into tmp14 set id=1; ? ? ? ? ? ? ? ? ? ? ? ? ?^
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Mysql??DATEDIFF函數(shù)用法總結(jié)示例詳解
MySQL DATEDIFF()函數(shù)是MySQL中常見的日期函數(shù)之一,它主要用于計算兩個日期之間的差值,單位可以是天、周、月、季度和年,DATEDIFF函數(shù)用于返回兩個日期的天數(shù),這篇文章主要介紹了Mysql??DATEDIFF函數(shù),包括語法格式和示例代碼講解,需要的朋友可以參考下2023-03-03
MySQL中的SHOW FULL PROCESSLIST命令實現(xiàn)
SHOW FULL PROCESSLIST命令是MySQL中一個非常有用的工具,可以幫助我們理解和監(jiān)控MySQL服務(wù)器的狀態(tài),本文主要介紹了MySQL中的SHOW FULL PROCESSLIST命令,感興趣的可以了解一下2023-11-11
MySQL中find_in_set()函數(shù)用法示例詳解
find_in_set這個是mysql的一個函數(shù),見得比較少,下面這篇文章主要給大家介紹了關(guān)于MySQL中find_in_set()函數(shù)用法的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09
Mysql行轉(zhuǎn)列把逗號分隔的字段拆分成多行兩種方法
在數(shù)據(jù)庫中有時候我們需要將一些行數(shù)據(jù)轉(zhuǎn)換為列數(shù)據(jù),這在處理數(shù)據(jù)透視表、報表生成等場景下非常常見,這篇文章主要給大家介紹了關(guān)于Mysql行轉(zhuǎn)列把逗號分隔的字段拆分成多行的兩種方法,需要的朋友可以參考下2024-05-05
用percona-toolkit為MySQL收集系統(tǒng)和性能信息的教程
這篇文章主要介紹了用percona-toolkit為MySQL收集系統(tǒng)和性能信息的教程,可以輕松地將服務(wù)器基本信息錄入數(shù)據(jù)庫,需要的朋友可以參考下2015-11-11

