當前位置:首頁 » 編程語言 » sql插入多條列數據
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql插入多條列數據

發布時間: 2023-01-05 16:37:26

Ⅰ 求sql怎麼一次用insert 添加多條數據

用insert 添加多條數據:
insert into 表1(列名) select 列名 from 表2 --主鍵要自增
對於主鍵不自增的也可以處理,如:建一張臨時表,主鍵ID自增,然後取出要插入有的最大值,把最大值加到臨時表ID上再用:insert into 表1(ID,列名) select ID,列名 from 表2

insertintopersons
(id_p,lastname,firstName,city)
values
(200,'haha','deng','shenzhen'),
(201,'haha2','deng','GD'),
(202,'haha3','deng','Beijing');

Ⅱ 如何使用一條SQL語句,插入多條記錄

有三種方法:
1.InSert Into <表名>(列名)
Select <列名>
From <源表名>
如:INSERT INTO TongXunLu (姓名,地址,電子郵件)
SELECT SName,SAddress,SEmail
FROM Students 這種方法需要先建好新表.

2.Select (列名)
Into <表名>
From <源表名>
如:SELECT Students.SName,Students.SAddress,Students.SEmail
INTO TongXunLu
FROM Students 這種方法SQL自動建表

3.InSert Into <表名>(列名)
Select <列名> Union
Select <列名> Union
……
如:INSERT STUDENTS (SName,SGrade,SSex)
SELECT '張可',7,1 UNION
SELECT '李揚',4,0 UNION
SELECT '楊曉',2,0 UNION
SELECT '湯美',3,0 UNION
SELECT '蘇三東',7,1 UNION
SELECT '王立岩',3,1 UNION
SELECT '張偉',7,1 UNION
SELECT '陳剛',4,1 UNION
SELECT '王娟娟',7,0

Ⅲ sql 多列插入數據

類似這樣做吧.

create table #1 (Time datetime)--select * from #1
declare @i int,@StartTime datetime
select @i = 0,
@StartTime = '2010-3-17 8:30:00'
while @i < 5
begin insert into #1 values(dateadd(dd,@i,@StartTime))
set @i=@i+1
end
select * from #1
drop table #1

Ⅳ 求sql怎麼一次用insert 添加多條數據

用insert 添加多條數據:
insert into 表1(列名) select 列名 from 表2 --主鍵要自增
對於主鍵不自增的也可以處理,如:建一張臨時表,主鍵ID自增,然後取出要插入有的最大值,把最大值加到臨時表ID上再用:insert into 表1(ID,列名) select ID,列名 from 表2
insert into persons
(id_p, lastname , firstName, city )
values
(200,'haha' , 'deng' , 'shenzhen'),
(201,'haha2' , 'deng' , 'GD'),
(202,'haha3' , 'deng' , 'Beijing');

Ⅳ 如何用SQL語句向一個表中插入多行記錄

insert一般是用來給表插入一條指定的列值的,但是,insert還存在另一種形式,可以利用它將一條select語句的結果插入表中。

這就是所謂的insert select,顧名思義,它是由一條insert語句和一條select語句組成的。假如你從另一張表中合並客戶列表到你的Custumers表,不需要每次讀取一行,然後再將它用insert插入,可以如下進行:

insert into Custumer(cust_id,

cust_cintact,

cust_name,

cust_email,

cust_address,

cust_country)

select cust_id,

cust_cintact,

cust_name,

cust_email,

cust_address,

cust_country

from CustNew;

(5)sql插入多條列數據擴展閱讀

insert select中的列名為簡單起見,這個例子在insert和select語句中使用了相同的列名,但是,不一定要求列名匹配。事實上,DBMS甚至不關心select返回的列名,它使用的是列的位置。

因此,select中的第一列(不管其列名)將用來填充表列中的指定的第一個列,第二列將用來填充表列中指定的第二個列,如此等等。

Ⅵ 如何一次向SQL Server Insert多條記錄

樓主好,首先要看你插入的是什麼數據,是枚舉型的還是結果集。枚舉類型插入多條的語法如下:

insertinto目標表
(列名1,列名2,···,列名n)
values
(A內容1,A內容2,···,A內容n),
(B內容1,B內容2,···,B內容n),
····,
(N內容1,N內容2,···,N內容n)

如果你插入的是查詢的結果集

insertinto目標表
(列名1,列名2,···,列名n)
select列1,列2,···,列nfrom表

當然,插入的結果集可以是各種查詢,比如關聯查詢,復雜查詢等等,也可以是派生列。

Ⅶ 如何一次插入多條記錄的SQL語句

在使用SQL資料庫的時候,我們也許會需要一次像資料庫中添加多條記錄,那麼我們可以使用SQL語句來實現,該語句具體如下:x0dx0a--添加一條記錄 x0dx0aINSERT INTO tableName(col1,col2,col3) VALUES (1,2,3) x0dx0a x0dx0a--添加多條記錄 x0dx0aINSERT INTO tableName(col1,col2,col3) x0dx0aSELECT 3,4,5 x0dx0aUNION ALL x0dx0aSELECT 6,7,8 x0dx0a x0dx0a--從另外的一張表中讀取多條數據添加到新表中 x0dx0aINSERT INTO tableName(col1,col2,col3) x0dx0aSELECT a,b,c FROM tableA x0dx0a x0dx0a--從其他的多張表中讀取數據添加到新表中 x0dx0aINSERT INTO tableName(col1,col2,col3) x0dx0aSELECT a,b,c FROM tableA WHERE a=1 x0dx0aUNION ALL x0dx0aSELECT a,b,c FROM tableB WHERE a=2 x0dx0a上邊代碼中的into都可以省略!x0dx0a上邊代碼中的union all如果換成union,則相同記錄只插入一次,不會重復插入。x0dx0a另外一種方法是SQL Server2008特有的,所以,如果你不是SQL Server2008,就不能使用這種方法了。 x0dx0aINSERT INTO MyTable(ID,NAME)VALUES(7,顛'),(8,顜'),(9,顝')x0dx0acreate table [TEST]x0dx0a(x0dx0a [NUM_ID] int primary keyx0dx0a)x0dx0agox0dx0adeclare @temp intx0dx0aset @temp=1;x0dx0awhile @temp<=1000000 x0dx0abeginx0dx0ainsert into [TEST]([NUM_ID]) values(@temp)x0dx0aset @temp=@temp+1;x0dx0aendx0dx0agox0dx0a----------------------------------------------------------x0dx0a--試試下面的方法x0dx0a--2005x0dx0aDECLARE @n AS BIGINT;x0dx0aSET @n = 1000000;x0dx0aWITH Base ASx0dx0a(x0dx0a SELECT 1 AS nx0dx0a UNION ALLx0dx0a SELECT n + 1 FROM Base WHERE n < CEILING(SQRT(@n))x0dx0a),x0dx0aExpand ASx0dx0a(x0dx0a SELECT 1 AS cx0dx0a FROM Base AS B1, Base AS B2x0dx0a),x0dx0aNums ASx0dx0a(x0dx0a SELECT ROW_NUMBER() OVER(ORDER BY c) AS nx0dx0a FROM Expandx0dx0a)x0dx0aSELECT n FROM Nums WHERE n <= @nx0dx0aOPTION(MAXRECURSION 0);x0dx0a--2x0dx0aCREATE FUNCTION dbo.fn_nums(@n AS BIGINT) RETURNS WITHx0dx0a L0 AS(SELECT 1 AS c UNION ALL SELECT 1),x0dx0a L1 AS(SELECT 1 AS c FROM L0 AS A, L0 AS B),x0dx0a L2 AS(SELECT 1 AS c FROM L1 AS A, L1 AS B),x0dx0a L3 AS(SELECT 1 AS c FROM L2 AS A, L2 AS B),x0dx0a L4 AS(SELECT 1 AS c FROM L3 AS A, L3 AS B),x0dx0a L5 AS(SELECT 1 AS c FROM L4 AS A, L4 AS B),x0dx0a Nums AS(SELECT ROW_NUMBER() OVER(ORDER BY c) AS n FROM L5)x0dx0a SELECT n FROM Nums WHERE n <= @n;x0dx0aGOx0dx0a--2000 這個會比前兩個慢,但是前兩個2000不能用x0dx0aCREATE TABLE dbo.Nums(n INT NOT NULL PRIMARY KEY);x0dx0aDECLARE @max AS INT, @rc AS INT;x0dx0aSET @max = 1000000;x0dx0aSET @rc = 1;x0dx0aINSERT INTO Nums VALUES(1);x0dx0aWHILE @rc * 2 <= @maxx0dx0aBEGINx0dx0a INSERT INTO dbo.Nums SELECT n + @rc FROM dbo.Nums;x0dx0a SET @rc = @rc * 2;x0dx0aENDx0dx0aINSERT INTO dbo.Numsx0dx0a SELECT n + @rc FROM dbo.Nums WHERE n + @rc <= @max; x0dx0a--------------------------------------------------------------------------------------------------------

Ⅷ plsql怎麼往表裡插入多條數據

1、採用insert into values 語句插入一條,寫很多條語句即可多條數據,這種主要針對於離散值以及一些基礎信息的錄入,如:insert into test(xh,mc) values('123','測試');
如果插入的數據有規律,可利用for、loop循環插入,主要用於批量生成測試數據
begin
for i in 1 .. 100 loop
insert into test(xh,mc) values(i||'','測試');
end loop;
end ;。
2、採用insert into selct from 語句來一次性插入一個集合,這種主要依據於要插入的數據源已經存儲於資料庫對象中,或者利用al虛表來構造數據,經過加工後寫入一個集合。
insert into test (xh,mx) select '123','測試' from al;
3、採用plsql等工具、或者oracle的imp、impdp命令來導入,這種主要用資料庫與資料庫之間的大批量數據導入,導入的數據格式為plsql的pde、oracle的dmp等。dmp文件可使用
table_exists_action參數控制導入動作:replace替換原表,truncate清除原表數據再導入,append增量導入數據,當然impdp數據泵的導入要依賴於directory路徑。
impdp 用戶名/密碼 mpfile=123.dmp logfile=123.log directory=imp_dir tables=test table_exists_action=append
4、使用excel文件直接拷貝。這種主要用於要寫入的數據已是excel文件或者行列分明的其它格式文件,每一列的值和表結構相對應,可直接打開表的行級鎖,把數據拷貝進入。
打開行級鎖方法:
select t.*,rowid from 表名 t where 1=2;
select * from 表名 where 1=2 for update;
直接把excel數據拷貝到表裡

Ⅸ sql中添加一列中的多條數據

要建2各表。
1.A表ID建(類似於類別)
2.B表NAME建(類似於新聞條數)
添加B表多條信息的時候,可以同時添加A表的ID,B表裡就是NAME內容不一樣。ID就是相同的。