当前位置:首页 » 编程语言 » sql合并多行

sql合并多行

发布时间: 2023-04-27 22:32:32

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 Server多行查询结果合并在一行中

如果你要取的值是AdminName, 表应该还有一个标识来做复合组键, 就是最最终想要结果戚伏卖的col title(admin1, admin2).

假如结构厅瞎如下高逗:

㈢ SQL 多行多列数据清洗合并为一行

SELECT  

            A,

            GROUP_CONCAT( B  SEPARATOR  ','  ),

            GROUP_CONCAT( C  SEPARATOR   ','  )

FROM

            table_name 

GROUP BY

            A

1.GROUP_CONCAT()中的值为你要合并的数据的字段名;

2.SEPARATOR 函数是用来分隔这些要合并的数据的 ,' ' 中是你要用哪个符号来分隔,可以直接不填符号默认为空值;

2.必须要用GROUP BY 语句来进行分组管理,不然所有的数据都会被合并成一条记录

参考链接

https://www.cnblogs.com/shoshana-kong/p/11147690.html

㈣ 如何用sql语句将多行合并成一行

select id ,time,sum(2),sum(3),sum(4)... from 表
group by id,time
order time
如果腔销拍time 不是字符类斗则型分伍羡组分的不对可以直接转成字符类型到天再用

㈤ SQL多行合并为一行,SQL语句如何写

最简捷直观的方法就是利用分组

selectID,
Sum(语文)语文,
Sum(数学)数学,
Sum(英语)英语
fromscores
groupbyID

你可以直接用下面的语句在SQL Server中测试结果:

DECLARE@ScoresVartable(
IDintNOTNULL,
Chineseint,
Mathint,
Englishint);

Insertinto@ScoresVar
values(1,70,null,null)
Insertinto@ScoresVar
values(1,null,80,null)
Insertinto@ScoresVar
values(1,null,null,90)
Insertinto@ScoresVar
values(2,75,null,null)
Insertinto@ScoresVar
values(2,null,85,null)
Insertinto@ScoresVar
values(2,null,null,95)


selectID,
SUM(Chinese)Chinese,
Sum(Math)Math,
Sum(English)English
from@ScoresVar
groupbyID

还有一种方法,可能更通用一点,利用 FOR XML PATH 和STUFF函数来做,虽然复杂,但是对表的数据类型无限制。

还是上面的测试数据,你可以通过下面的代码来得到你想要的数据:

SELECTID,
STUFF((SELECT','+Cast(A.Chineseasvarchar)
[email protected]=B.IDFORXMLPATH('')),1,1,'')AsChinese,
STUFF((SELECT','+Cast(A.Mathasvarchar)
[email protected]=B.IDFORXMLPATH('')),1,1,'')AsMath,
STUFF((SELECT','+Cast(A.Englishasvarchar)
[email protected]=B.IDFORXMLPATH('')),1,1,'')AsEnglish
From@ScoresVarB
GroupByID
--输出结果
IDChineseMathEnglish
1708090
2758595

㈥ SQL 将属于同一个ID下的多行数据合并到一行

mssql下
createTable#myfal(IDint,data1varchar(20),data2varchar(20))
insertinto#myfalvalues(1,1,'仔族辩')
insertinto#myfalvalues(1,1.1,'')
insertinto#myfalvalues(1,'',0.3)
insertinto#myfalvalues(2,1,'')
insertinto#myfalvalues(2,'',1.2)
select*from#myfal
selectID,SUM(casewhendata1=''then穗悄0elseConvert(float,data1)end)data1,
SUM(casewhendata2=''then0elseConvert(float,data2)end)data2from#myfal
group念缺byid
droptable#myfal

㈦ sql语句多行合并为一行

用多个字段分组就行,SQL如下

SELECTA,B,C,SUM(D)FROMTABLEGROUPBYC,A,B

㈧ SQL 多行数据合并成一行

group by 前面相同的字段,后面不同的,用max取。
SELECT m.member_id,
prefix_desc 'Prefix:',
UPPER(first_name) 'First Name:',
UPPER(last_name) 'Last Name:',
UPPER(email) 'Email:',
LOWER(user_id) 'User ID:',
REPLICATE('*',LEN(password)) 'Password:',
('****'+SUBSTRING(license_no,5,4)) 'Drivers Licese Number:',
REPLACE(email_ind,'Y','Accept') 'Email notification:',
REPLACE(return_ind,'Y','Accept') 'HERIZ E-RETURN',
max(CASE WHEN tel_type= 'B' THEN tel_number END + ' '+REPLACE(pref_phone_ind,'P','PREF')) 'Business Phone',
max('('+ p.country_code + ')'喊顷+ CASE WHEN tel_type= 'M' THEN tel_number END) 'Mobile Number',
max(CASE WHEN tel_type= 'F' THEN tel_number END) '闷凳Fax'
FROM MEMBER m, license l, phone_fax p
WHERE m.member_id = l.member_id
AND m.member_id = p.member_id
AND m.member_id = 'A000001'
group by
m.member_id,
prefix_desc 'Prefix:',
UPPER(first_name) 'First Name:',
UPPER(last_name) 'Last Name:'蚂渗旅,
UPPER(email) 'Email:',
LOWER(user_id) 'User ID:',
REPLICATE('*',LEN(password)) 'Password:',
('****'+SUBSTRING(license_no,5,4)) 'Drivers Licese Number:',
REPLACE(email_ind,'Y','Accept') 'Email notification:',
REPLACE(return_ind,'Y','Accept') 'HERIZ E-RETURN'

热点内容
cod17编译着色器55 发布:2025-07-08 15:43:53 浏览:558
Shell脚本的posix模式 发布:2025-07-08 15:41:32 浏览:352
压缩奶油消泡 发布:2025-07-08 15:40:11 浏览:425
服务器一定要有公网ip吗 发布:2025-07-08 15:35:12 浏览:797
appendpython 发布:2025-07-08 15:22:54 浏览:656
安卓虚拟号码怎么设置 发布:2025-07-08 15:22:04 浏览:663
c语言爱心代码编译不出来 发布:2025-07-08 15:11:07 浏览:540
qq密码的数据库 发布:2025-07-08 14:54:50 浏览:6
多图床源码 发布:2025-07-08 14:46:36 浏览:573
sqldblinkoracle 发布:2025-07-08 14:44:50 浏览:608