一條sql插入多條數據

oracle 9及以上

"INSERT ALL INTO  a表 VALUES(各個值)  INTO a表 VALUES (其它值) INTO a表 VALUES(其它值) ....再跟一個SELECT 語句"。後邊跟的SELECT 語句咱們能夠從虛擬表裏查如 SELECT 1 FROM DUAL。注意後邊跟的SELECT語句能夠隨意,不過不是把它SELECT出來的內容插入前邊的表裏,而是起到前邊的多個數據每次插入多少行的做用,這個多少行是和後邊跟的SELECT語句查出來幾條而定的,如後邊的跟的SELECT 語句查出了15條記錄,那麼前邊的"INSERT ALL INTO  a表 VALUES(各個值1)  INTO a表 VALUES (其它值2) INTO a表 VALUES(其它值3)"就會先插入值1對應的各個字段插入15條記錄,而後插入值2各個對應的字段15條記錄,而後插入值3對應的各個字段15條記錄。 mysql

       咱們要的是批量插入多個VALUES這樣的一條記錄,因此後邊的SELECT 語句只要能查出一條記錄就行,建議你們後邊用SELECT 1 FROM DUAL sql

  

sqlserver  

能夠批量插入另外一個數據集的數據:  insert xxx(id,name) select id,name from xxx oracle

sql server 2008及以上版本

INSERT INTO BillInfo
           (BillID
           ,BID
           ,IWtime
   ,Storage)
     VALUES
('1',1,'2012-11-19',100)
,('2',1,'2012-11-19',100)
,('3',1,'2012-11-19',100)
,('4',1,'2012-11-19',100) sqlserver


mysql

INSERT INTO 某表 VALUES(各個值),VALUES(各個值),.....; spa

多個INSERT INTO VALUEES(各個值);這樣以「;」隔開一同執行 server

相關文章
相關標籤/搜索