『壹』 sql如何將多個表合並成一個表
--復雜點的方法,
DECLARE @startTime DATETIME --開始的時間
DECLARE @endTime DATETIME --結束的時間
--比如我要得到1月到2月的數據
SET @startTime = '2014-01-01 00:00:00.000' --從新年第一天開始
SET @endTime = GETDATE() --一直到當前時間
--准備創建表
--根據月份創建
DECLARE @mi INT
--(這里必須要是開始時間和結束時間在一年之內的情況,如果不是在一年以內則要另外考慮,懶得寫)
SET @mi = MONTH(@endTime) - MONTH(@startTime) + 1 --用結束月份減去開始月份,得到總共要創建幾個月份表(加上當前月份)
--PRINT @mi
WHILE @mi >0
BEGIN
DECLARE @tableName VARCHAR(6) --月份表名
DECLARE @sql NVARCHAR(1000)
SET @tableName = '2014'
IF @mi<10
BEGIN
SET @tableName = @tableName + '0'
END
SET @tableName = @tableName + CAST(@mi AS VARCHAR)
IF NOT EXISTS (SELECT * FROM sysobjects WHERE [name] = @tableName AND [type] = 'U')
BEGIN
--如果當前月份表不存在,創建當前月份表
SET @sql = 'CREATE TABLE '+@tableName + ' (MId INT PRIMARY KEY IDENTITY(1,1))'
PRINT @sql
--執行
--EXECUTE sp_executesql N@sql
END
DECLARE @dayName VARCHAR(8) --天表名
WHILE CONVERT(VARCHAR(6),@endTime,112)=@tableName --確定當前時間是否是當前月的
BEGIN
SET @sql = ''
SET @dayName = CONVERT(VARCHAR(8),@endTime,112)
SET @sql = 'INSERT INTO '+@tableName +' VALUES SELECT * FROM ' + @dayName
PRINT @sql
--執行
--EXECUTE sp_executesql N@sql
SET @sql = ''
SET @endTime = DATEADD(DAY,-1,@endTime)
END
SET @mi = @mi - 1 --月份減一
/*
------------------------------------------------------------
CREATE TABLE 201402 (MId INT PRIMARY KEY IDENTITY(1,1))
INSERT INTO 201402 VALUES SELECT * FROM 20140219
INSERT INTO 201402 VALUES SELECT * FROM 20140218
INSERT INTO 201402 VALUES SELECT * FROM 20140217
INSERT INTO 201402 VALUES SELECT * FROM 20140216
INSERT INTO 201402 VALUES SELECT * FROM 20140215
INSERT INTO 201402 VALUES SELECT * FROM 20140214
INSERT INTO 201402 VALUES SELECT * FROM 20140213
INSERT INTO 201402 VALUES SELECT * FROM 20140212
INSERT INTO 201402 VALUES SELECT * FROM 20140211
INSERT INTO 201402 VALUES SELECT * FROM 20140210
INSERT INTO 201402 VALUES SELECT * FROM 20140209
INSERT INTO 201402 VALUES SELECT * FROM 20140208
INSERT INTO 201402 VALUES SELECT * FROM 20140207
INSERT INTO 201402 VALUES SELECT * FROM 20140206
INSERT INTO 201402 VALUES SELECT * FROM 20140205
INSERT INTO 201402 VALUES SELECT * FROM 20140204
INSERT INTO 201402 VALUES SELECT * FROM 20140203
INSERT INTO 201402 VALUES SELECT * FROM 20140202
INSERT INTO 201402 VALUES SELECT * FROM 20140201
CREATE TABLE 201401 (MId INT PRIMARY KEY IDENTITY(1,1))
INSERT INTO 201401 VALUES SELECT * FROM 20140131
INSERT INTO 201401 VALUES SELECT * FROM 20140130
INSERT INTO 201401 VALUES SELECT * FROM 20140129
INSERT INTO 201401 VALUES SELECT * FROM 20140128
INSERT INTO 201401 VALUES SELECT * FROM 20140127
INSERT INTO 201401 VALUES SELECT * FROM 20140126
INSERT INTO 201401 VALUES SELECT * FROM 20140125
INSERT INTO 201401 VALUES SELECT * FROM 20140124
INSERT INTO 201401 VALUES SELECT * FROM 20140123
INSERT INTO 201401 VALUES SELECT * FROM 20140122
INSERT INTO 201401 VALUES SELECT * FROM 20140121
INSERT INTO 201401 VALUES SELECT * FROM 20140120
INSERT INTO 201401 VALUES SELECT * FROM 20140119
INSERT INTO 201401 VALUES SELECT * FROM 20140118
INSERT INTO 201401 VALUES SELECT * FROM 20140117
INSERT INTO 201401 VALUES SELECT * FROM 20140116
INSERT INTO 201401 VALUES SELECT * FROM 20140115
INSERT INTO 201401 VALUES SELECT * FROM 20140114
INSERT INTO 201401 VALUES SELECT * FROM 20140113
INSERT INTO 201401 VALUES SELECT * FROM 20140112
INSERT INTO 201401 VALUES SELECT * FROM 20140111
INSERT INTO 201401 VALUES SELECT * FROM 20140110
INSERT INTO 201401 VALUES SELECT * FROM 20140109
INSERT INTO 201401 VALUES SELECT * FROM 20140108
INSERT INTO 201401 VALUES SELECT * FROM 20140107
INSERT INTO 201401 VALUES SELECT * FROM 20140106
INSERT INTO 201401 VALUES SELECT * FROM 20140105
INSERT INTO 201401 VALUES SELECT * FROM 20140104
INSERT INTO 201401 VALUES SELECT * FROM 20140103
INSERT INTO 201401 VALUES SELECT * FROM 20140102
INSERT INTO 201401 VALUES SELECT * FROM 20140101
*/
『貳』 使用sql語句使查詢到的兩張表拼接為一張表
select * from 表a
union
select * from 表b
『叄』 如何用sql將2個表合並為一個表 如下圖
這兩個表之間有關系?你說結構一樣,是什麼一樣?不清楚。
如果這兩個表之間沒有關系,現又要合並,說明這8個屬性本就是一個實體的完整屬性,又何必拆分,表的設計就有問題了。
『肆』 sql把兩個表合並成一個新表的語句應該怎麼寫
SQL SERVER:
select *
into 表3
from
(
select 欄位列表1 from 表1
union all
select 欄位列表2 from 表2
) a
說明:欄位列表1與欄位列表1要數目相同、類型兼容
其它資料庫自己參考。
『伍』 sql兩個表數據合並到一個新表
SQL 資料庫中的兩個表的數據合並到一個新表中,首先需要create一個新的表,然後根據數據表結構insert兩個表的數據到新表中即可完成兩個表數據合並到一個新表。
『陸』 sql sever將兩個表合起來語法
select * from a,b 這會顯示所有兩個表的笛卡爾積。
一、外連接1.左連接 left join 或 left outer joinSQL語句:select * from student left join score on student.Num=score.Stu_id;2.右連接 right join 或 right outer joinSQL語句:select * from student right join score on student.Num=score.Stu_id;3.完全外連接 full join 或 full outer joinSQL語句:select * from student full join score on student.Num=score.Stu_id;通過上面這三種方法就可以把不同的表連接到一起,變成一張大表,之後的查詢操作就簡單一些了。而對於select * from student,score;則盡量不使用此語句,產生的結果過於繁瑣。
『柒』 怎樣用sql語句實現將兩個沒有關系的表拼接成一張表
1、創建測試表,
create table test_aaa( value varchar2(20));
create table test_bbb( value varchar2(20));
『捌』 SQL 表如何兩張表合並成一張 !!
UNION 操作符用於合並兩個或多個 SELECT 語句的結果集。
請注意,UNION 內部的 SELECT 語句必須擁有相同數量的列。列也必須擁有相似的數據類型。同時,每條 SELECT 語句中的列的順序必須相同。
SQL UNION 語法
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
注釋:默認地,UNION 操作符選取不同的值。如果允許重復的值,請使用 UNION ALL。
SQL UNION ALL 語法
SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
另外,UNION 結果集中的列名總是等於 UNION 中第一個 SELECT 語句中的列名。
『玖』 sql 把兩個表合成一個表
上面的數據沒看明白唯一性
如果兩個表拼接可以使用union
或者使用一個視圖,把兩個表關聯起來
『拾』 SQL如何合並兩個表並生成一個新表
create tab3 as
select tab2.t2id t2id,tab1.tname tname from tab1,tab2 where tab1.tid=tab2.t1_id