sql資料庫多條語句查詢結果合併輸出的問題

2022-02-09 00:01:42 字數 5464 閱讀 7398

1樓:匿名使用者

建立create proc p_test

@rwmc varchar(30),

@gh varchar(40)

asbegin

select c.數量,c.資訊,c.

id,c.版本,c.ip,c.

次數,c.間隔,c.票換,c.

黑名單,c.人數,c.備用1,c.

備用2,c.狀態,c.ip段,a.

票數1,b.票數2

from

(select sum(票數) 票數1 from  nmxsjjl  where 任務名稱=@rwmc) a,

(select sum(票數) 票數2 from  nmxsjjl  where 任務名稱=@rwmc and 工號=@gh) b,

(select 數量,資訊,id,版本,ip,次數,間隔,票換,黑名單,人數,備用1,備用2,狀態,ip段 from nmzkb where 任務名稱=@rwmc) c

end執行

exec p_test '任務名稱','工號'

2樓:最

為什麼不使用union all 呢,那樣就能一起輸出了

sql如何使兩個select語句查詢結果合併一個? 10

3樓:go將來的我

這樣,你把第一個和第二個select寫到一個新select查詢的from裡面,用join連線使公司名字相等,在新的select中投影出公司名和兩個count

4樓:匿名使用者

select * from

(select unit,count(*)as number from archives_management group by unit) a

inner join

(select fine_units,count(*) as fine_number from fine group by fine_units) b

on a.unit=b.fine_units

sql如何合併多個查詢結果 5

5樓:匿名使用者

合併結果一般用union或者union all,具體用什麼取決於需求。

如資料如下:

a表:id    name

1      張三

2      李四

3      王五

b表:id     name

1       張三

2       趙六

3       孫七

如果select id,name from aunion all

select id,name from b;

結果:id    name

1      張三

2      李四

3      王五

1      張三

2      趙六

3      孫七

如果:select id,name from aunion

select id,name from b;

結果:id    name

1      張三

2      李四

3      王五

2      趙六

3      孫七

也就是說union all在執行後,不會把相同的結果合併,而union會把相同的結果只顯示成一行。

6樓:酒好爛

1.兩個不同的表進行查詢,需要把結果合併,

比如table1的列為 id, user_id, type_id,pro_id;

table2的列為 id,user_id,collect_id;分別如下圖所示

table1:

table2:

2.將兩個表的查詢結果合併到一起的查詢語句為

select *, null as collect_id from table1 where user_id = 527

union

select id,user_id,null as type_id,null as pro_id, collect_id from table2 where user_id = 527;

3.結果為:

總結:其實就是把對應的列補充到沒有該列的表中,在例子中就是把collect_id補充到table1中,

把type_id,pro_id補充到table2中。

7樓:匿名使用者

用union 關鍵字啊

但是使用這個關鍵字你需要知道

並操作1所有查詢中的列數和列的順序必須相同2資料型別必須相容啊

8樓:禹希初

select ypbm from mz_ypxx_tcunionselect ypmc from mz_ypxx,mz_ypxx_tc where mz_ypxx_tc.ypbm=mz_ypxx.ypbmunionselect tcbm from mz_ypxx_tcunionselect ypmc from mz_ypxx_tc,mz_ypxx where mz_ypxx_tc.

tcypbm=mz_ypxx.ypbm

sql迴圈查詢如何合併查詢結果到一個表,每個結果表作為一個欄位 30

9樓:ice海

--先解決第一問題,第一個問題其實就一個查詢語句就可以了

declare @index int

set @index=-3 --該數值必須是負數,-3的意思是,加入現在是12月,那麼資料取的就是9,10,11

select convert(varchar(7),訂單日期,120) as '訂單年月',sum(訂單價值)

from 資料表

where 訂單日期 between

dateadd(month,@index,(convert(varchar(7),dateadd(month,-1,getdate()),120)+'-01'))

and  dateadd(day,-1,(convert(varchar(7),getdate(),120)+'-01'))

group by convert(varchar(7),訂單日期,120)

order by convert(varchar(7),訂單日期,120)

上面的語句的結果格式就是

訂單年月   訂單總價值

2012-11       12345.00

2012-10       1245.154

2012-09       1254.22

--結合第二個問題,我有新的想法,在實際工作中,加入你的表欄位個數不統一,在展示為報表的時候是很麻煩的。下面是我的一個想法,不知道是否可以給你參考

declare @index int

set @index=-3 --該數值必須是負數,-3的意思是,加入現在是12月,那麼資料取的就是9,10,11

select convert(varchar(4),訂單日期,120) as '訂單年',

sum(case when month(訂單日期)=1 then 訂單價值 else 0 end) as '一月份價值總和',

sum(case when month(訂單日期)=2 then 訂單價值 else 0 end) as '二月份價值總和',

sum(case when month(訂單日期)=3 then 訂單價值 else 0 end) as '三月份價值總和',

sum(case when month(訂單日期)=4 then 訂單價值 else 0 end) as '四月份價值總和',

sum(case when month(訂單日期)=5 then 訂單價值 else 0 end) as '五月份價值總和',

sum(case when month(訂單日期)=6 then 訂單價值 else 0 end) as '六月份價值總和',

sum(case when month(訂單日期)=7 then 訂單價值 else 0 end) as '七月份價值總和',

sum(case when month(訂單日期)=8 then 訂單價值 else 0 end) as '八月份價值總和',

sum(case when month(訂單日期)=9 then 訂單價值 else 0 end) as '九月份價值總和',

sum(case when month(訂單日期)=10 then 訂單價值 else 0 end) as '十月份價值總和',

sum(case when month(訂單日期)=11 then 訂單價值 else 0 end) as '十一月份價值總和',

sum(case when month(訂單日期)=12 then 訂單價值 else 0 end) as '十二月份價值總和'

from 資料表

where 訂單日期 between

dateadd(month,@index,(convert(varchar(7),dateadd(month,-1,getdate()),120)+'-01'))

and  dateadd(day,-1,(convert(varchar(7),getdate(),120)+'-01'))

group by convert(varchar(4),訂單日期,120)

order by convert(varchar(4),訂單日期,120)

上面的語句的結果格式就是

訂單年   一月份 二月份 三月份 四月份 五月份 六月份 ... 九月份 十月份 十一月份 十二月份

2013       0.00     0.00     0.

00     0.00    0.00     0.

00    ...254.11  25.

55   7125.6         0.00

加入客戶要看過去30個月的資料,按你的需求有30個欄位,看起來就很亂了。

上述語句總的是13個欄位,第一個欄位是年,其他是月份。那麼如果客戶要看30個月的與當前是2013-12為準,那麼就是2013-11到2011-05 展示的格式就是

訂單年   一月份 二月份 三月份 四月份 五月份 六月份 ... 九月份 十月份 十一月份 十二月份

2013         87     13         32         12     1254     12.3    ...254.

11  25.55   7125.6         0.

002012        25.5    3565    254     155     655       235     ...  544     458       8989        8889

2011        0.00     0.00    0.

00    0.00     22.1    255.

0  ...   256.1  2365     625          3652

不知道是否這個想法有幫助到你。

sql怎樣跨資料庫查詢,sql怎樣跨資料庫查詢oracle

使用dblink。例如 當前使用的資料庫是orcl1 要查詢的資料庫是orcl2的scott使用者的表。create public database link orcl2 scott connect to scott identified by tiger using description add...

緊急求救SQL語句,資料庫SQL語句!求救!

這麼多,這麼少分。資料庫sql語句!求救!select into from語句 要求目標表table 4不存在,因為在插入時會自動建立表table 4,並將table 3中指定欄位資料複製到table 4中。可以考慮使用如下語句 insert into dbo.table 4 sname,semai...

SQL查詢資料語句問題,SQL查詢資料語句問題

取n到m行 1.select top m from tablename where id not in select top n id from tablename order by id asc desc 2.select top m into 臨時表 或表變數 from tablename or...