⑴ sql中如何按照條件合並多行的數據
寫一個函數,運行sql調用函數,不知道你資料庫欄位名只是設前兩個欄位為id1,id2,這是我的思路 在我的資料庫測試過好用
create function pmerg(@id1 int ,@id2 int)
returns varchar(8000)
as
begin
declare @s varchar(8000)
set @s=''
select @s=@s+';'+name from y where id1=@id1 and id2=@id2
set @s=right(@s,len(@s)-1)
return(@s)
End
上面是建立的函數,下面是要運行的sql
select distinct id1, id2, dbo.pmerg(id1,id2) from y
⑵ 怎麼用SQL語句將一張表中ID相同的行的內容合並在一起
工具/材料:Management Studio。
1、首先在桌面上,點擊「Management Studio」圖標。
⑶ 【求助高人】sql根據條件合並行
SELECTO.ItemsID,sum(O.Num)Num,P.Price,O.Ver
FROMWIS_D_OutputItemsASO
,WIS_B_PriceDetailASP
WHEREO.ItemsID=P.ItemsID
ANDO.Ver=P.Ver
groupbyO.ItemsID,P.Price,O.Ver
看看是這意思不
⑷ sql 合並某相同欄位的行數據 怎麼寫查詢語句
以 sql server2005以上版本用xml合並
use Tempdb
go
--> -->
if not object_id(N'Tempdb..#') is null
drop table #
Go
Create table #([id] int,[name] nvarchar(1))
Insert #
select 1,N'a' union all
select 1,N'b' union all
select 2,N'c' union all
select 2,N'd' union all
select 2,N'e'
Go
Select ID,STUFF((SELECT ' '+Name FROM # WHERE ID=a.ID FOR XML PATH('')) ,1,1,'') AS Name
from # AS a
GROUP BY ID
/*
ID Name
1 a b
2 c d e
*/
oracle方法:
http://blog.csdn.net/roy_88/article/details/6930577
⑸ sql語句求指定幾行的總和
SELECTSUM(saleMoney)FROM(SELECTsaleMoneyFROMoe_voteLIMIT28,48)t
⑹ sql查詢時如何合並兩行數據,具體如下。
看樣子像sqlserver,就按sqlserver的寫了
創建測試表,數據:
createtabletest
(requestidint,
logidint,
operatedatevarchar(10),
operatetimevarchar(10),
operatorint);
insertintotestvalues(502,1372,'2018-06-13','16:16:03',155);
insertintotestvalues(502,1446,'2018-06-14','09:00:32',153);
insertintotestvalues(502,1472,'2018-06-14','09:33:07',157);
insertintotestvalues(502,1474,'2018-06-14','09:35:11',151);
insertintotestvalues(502,1657,'2018-06-14','15:17:10',153);
insertintotestvalues(502,1660,'2018-06-14','15:18:17',155);
insertintotestvalues(502,1661,'2018-06-14','15:19:01',153);
insertintotestvalues(502,1662,'2018-06-14','15:19:48',157);
insertintotestvalues(502,1677,'2018-06-14','15:31:34',151);
insertintotestvalues(502,1694,'2018-06-14','16:42:51',12);
insertintotestvalues(502,1709,'2018-06-14','18:08:45',9);
insertintotestvalues(502,1730,'2018-06-15','08:09:14',158);
insertintotestvalues(502,1732,'2018-06-15','08:09:16',157);
執行:
withtas
(selecttest.*,row_number()over()rnfromtest)
selectt1.requestid,t1.logid,cast(t1.operatedate+''+t1.operatetimeasdatetime)begintime,cast(t2.operatedate+''+t2.operatetimeasdatetime)endtime,t1..requestid=t2.requestidandt1.rn=t2.rn+1
查詢結果:
最後時間沒按你那種方式顯示,你那種到時候算操作時間也麻煩,還不如改成時間日期類型了。
⑺ sql語句能否實現兩行數據合並
select店名,
sum(1月)as1月,
sum(2月)as2月,
sum(3月)as3月,
sum(4月)as4月,
sum(5月)as5月
from(select*fromtable1unionallselect*fromtable2)a
groupby店名
有問題追問
⑻ SQL合並行,高手請近!!
select
bm,sum(time)
from
table
group
by
bm
其他列要怎麼顯示,你的行數已經少了
⑼ SQl按照條件多行合並問題
create
table
##b
as
(select
ID1,ID2,ID3,sum(Number)
from
表
group
by
ID1,ID2,ID3)
//把記錄合並後放到臨時表##b
Delete
from
表
//刪除表原記錄
create
table
表
as
(select
ID1,ID2,ID3,Number
from
##b)
//把合並後的記錄寫回表
回樓主:
刪除重復記錄只保留一條:
Delete
表
Where
ID
Not
In
(Select
Max(ID)
From
表
Group
By
name)
只查詢不重復記錄,不做刪除:
SELECT
distinct(name)
as
name
From
表
⑽ SQL多行合並為一行,SQL語句如何寫
selectid,max(語文)語文,max(數學)數學,max(英語)英語
fromtab
groupbyid