sql查询时如何sql 合并几个表的数据两行数据,具体如下。

SQL SERVER 如何把1列多行数据 合并成一列显示,具体格式如下:_百度知道
SQL SERVER 如何把1列多行数据 合并成一列显示,具体格式如下:
查询表:id
title3要求现实:title1,title2,title3
我有更好的答案
SQL SERVER 如何把1列多行数据 合并成一列显示:多行转一列,通过(,)将数据和并成一列。SQL SERVER 如何把1列多行数据 合并成一列显示的延伸:unpivot()函数用法:unpivot( x for& x in ()),用法和privot类似。例如:转之前:SELECT code,name,typeFROM cd_data_dict&转之后:SELECT code,name,typeFROM cd_data_dict unpivot (name for code in (code,name))
采纳率:100%
示例修改前:1列多行数据修改后:合并成一列示例语句select类别,&&&&名称&=&(&&&&&&&&stuff(&&&&&&&&&&&&(select&','&+&名称&from&Table_A&where&类别&=&A.类别&for&xml&path('')),&&&&&&&&&&&&1,&&&&&&&&&&&&1,&&&&&&&&&&&&''&&&&&&&&)&&&&)from&Table_A&as&A&group&by&类别把得到的内容以XML的形式显示for xml path('')&把拼接的内容的第一个“,”去掉stuff((select ',' + ep_name from ep_detail where ep_classes = a.ep_classes for xml path('')), 1, 1, '')
select stuff((select ','+title from tb for xml path('')),1,1,'')
本回答被网友采纳
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。其他回答(3)
转换成实体,操作起来就方便了
园豆:5423
你的写法有点问题,改一下就可以了。
SELECT [DATE], [DepartA]=STUFF((SELECT ','+[DepartA] FROM [tb]
WHERE [DATE]=a.[DATE] FOR XML PATH('')), 1, 1, '')
, [DepartB]=STUFF((SELECT ','+[DepartB] FROM [tb]
WHERE [DATE]=a.[DATE] FOR XML PATH('')), 1, 1, '')
, [DepartC]=STUFF((SELECT ','+[DepartC] FROM [tb]
WHERE [DATE]=a.[DATE] FOR XML PATH('')), 1, 1, '')
FROM [tb] a
GROUP BY [DATE]
园豆:1022
个人建议不要把一些逻辑运算放到数据库,数据库并不擅长这些,把数据取出来后在Table中操作:
private DataTable ColSpan(DataTable dt) { DataTable newTable = new DataTable(); newTable.Columns.Add("DATE"); newTable.Columns.Add("DepartA"); newTable.Columns.Add("DepartB"); newTable.Columns.Add("DepartC");
int rowNum = 0; string date = Convert.ToString(dt.Rows[0][0]);
foreach (DataRow row in dt.Rows) { if (date.Equals(Convert.ToString(row[0]))) { if (rowNum == newTable.Rows.Count) { object[] r = { date, row[1], row[2], row[3] }; newTable.Rows.Add(r); } else { newTable.Rows[rowNum][0] = newTable.Rows[rowNum][1] += string.IsNullOrEmpty(Convert.ToString(newTable.Rows[rowNum][1])) ? "" : "," + row[1]; newTable.Rows[rowNum][2] += string.IsNullOrEmpty(Convert.ToString(newTable.Rows[rowNum][1])) ? "" : "," + row[2]; newTable.Rows[rowNum][3] += string.IsNullOrEmpty(Convert.ToString(newTable.Rows[rowNum][1])) ? "" : "," + row[3]; }
} else { rowNum++; date = Convert.ToString(row[0]); object[] r = { date, row[1], row[2], row[3] }; newTable.Rows.Add(r); } } return newT }
这个 方法可以实现你的要求,参数就是从数据库获取的数据(按时间排序好)
清除回答草稿
&&&您需要以后才能回答,未注册用户请先。21:04 提问
sql 查询如何实现多个相同的记录合并成一个,举例如下,求指教。
按赞数排序
sql 查询不能返回字表的吧, 你a列的A对应b列的三行肯定是不行的,如果你要取最大值可以
select a, max(b) from table
group by a
这不是sql的活,是你界面展现的事,你可以自己自定义表格,或者第三方的表格,比如dev系列
sql干不了,在html页面生成时,动态的设置即可(table colspan)。
数据库一条一记录的,这个的话用js拼接个table吧
你这个sql肯定实现不了~前台用table拼吧~rowsplan
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐&&&& 最近的报表中有个需求,用户需要看到属于某个客户的Order的所有的Items,这些属于某个Order的Items需要归并为一个字段记录。
首先是对两个表的描述,一个是OrderHead,一个是OrderDetails,一个客户(DEBTOR)有多个Order,一个Order有一个或多个Item。OrderHead表与OrderDetails表通过Order_No进行关联。
OrderHead表如下:
OrderDetails表如下:
用户需要达到的效果如下图:
&我们的MS SQL语句如下:
SELECT oh.ORDER_NO,
(SELECT od.ITEM+',' FROM& orderdetail od
&&&&&&&& WHERE ((ITEM && N'/C') AND (ITEM && N'/F'))&& --此处我们加入了其它筛选条件以进一步过滤不符合要求的Items记录
&&&&&&&&&&&&&& AND od.ORDER_NO=oh.ORDER_NO& FOR XML PATH('')) AS ITEMS
& FROM orderhead AS oh
阅读(...) 评论()如何将数据库表的两张表进行合并查询_百度经验
&&&&&&&&&电脑软件如何将数据库表的两张表进行合并查询听语音
百度经验:jingyan.baidu.com有两张表,数据列均不一样,要将两张表的数据合并到一起,想应的sql怎么拼接呢?郑州达内专业老师为你解答。百度经验:jingyan.baidu.com1如果是按照关系合并,可以这么写select a.*, b.* from a join b on a.id = b.aid2如果是数据合并(假设两个表都有 相同列1 相同列2 两个字段),那么可以这样select a.相同列1, a.相同列2 from a union select b.相同列1, b.相同列2 from bEND经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。投票(0)已投票(0)有得(0)我有疑问(0)◆◆说说为什么给这篇经验投票吧!我为什么投票...你还可以输入500字◆◆只有签约作者及以上等级才可发有得&你还可以输入1000字◆◆如对这篇经验有疑问,可反馈给作者,经验作者会尽力为您解决!你还可以输入500字相关经验10000热门杂志第1期你不知道的iPad技巧3788次分享第1期win7电脑那些事6643次分享第2期新人玩转百度经验1412次分享第1期Win8.1实用小技巧2651次分享第1期小白装大神1925次分享◆请扫描分享到朋友圈}

我要回帖

更多关于 sql 合并数据 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信