用sql语句实现在同一张表中找到1个字段相同,另1个字段不同的记录
比如表A中字段1字段22433652681922551100用sql语句实现查询,查询出表192、100243、68、55365这样结果...
比如表A中
字段1 字段2
2 43
3 65
2 68
1 92
2 55
1 100
用sql语句实现查询,查询出表
1 92、100
2 43、68、55
3 65
这样结果 展开
字段1 字段2
2 43
3 65
2 68
1 92
2 55
1 100
用sql语句实现查询,查询出表
1 92、100
2 43、68、55
3 65
这样结果 展开
3个回答
展开全部
你的问题主要是实现行转列
oracle数据库中后者可以用wmsys.wm_concat实现,具体sql如下:
select 字段1, wmsys.wm_concat(字段2) from 表
group by 字段1
oracle数据库中后者可以用wmsys.wm_concat实现,具体sql如下:
select 字段1, wmsys.wm_concat(字段2) from 表
group by 字段1
追问
#1305 - FUNCTION wmsys.wm_concat does not exist 出现这个错误
追答
厄,目测你这是SQL SERVER
如果有其它列做标识,可以用在子查询中使用union来连接
如果没有标识,只好用存储过程来实现了
可以看下面的参考
参考资料: http://www.cnblogs.com/emanlee/archive/2009/08/14/1546353.html
展开全部
SELECT 表B.字段1,LEFT(字段2,LEN(字段2)-1) as 字段2 FROM (
SELECT 字段1,
(SELECT 字段2+'、' FROM 表A
WHERE 字段1=表c.字段1
FOR XML PATH('')) AS 字段2
FROM 表A 表c
GROUP BY 字段1
) 表B
FOR XML PATH 用法可以参照 http://hi.baidu.com/gagahjt/item/bfe3cbf3f3b833e61b111fc6
SELECT 字段1,
(SELECT 字段2+'、' FROM 表A
WHERE 字段1=表c.字段1
FOR XML PATH('')) AS 字段2
FROM 表A 表c
GROUP BY 字段1
) 表B
FOR XML PATH 用法可以参照 http://hi.baidu.com/gagahjt/item/bfe3cbf3f3b833e61b111fc6
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select 字段1, 字段2 from 表A group by 字段1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询