我需要根据col1值连接col2值。表如下所示:
Col1 Col2
----------------
1 10520.72
1 10520.71
2 10520.81
2 10520.82
3 10520.91
3 10520.92
我需要查询显示如下:
Col1 Col2
-------------------------
1 10520.71-10520.72
2 10520.81-10520.82
3 10520.91-10520.92
我与Toad合作,因此wm_concat
,group_concat
,array_to_string
对我不起作用。
请让我知道怎么做。
里纳
答案 0 :(得分:0)
我记得以前看过类似的东西,不得不稍微编辑它以使用你的浮点数,但现在是:Fiddle现在也测试了十进制数:fiddle
Select m.col1,
concat = STUFF((
SELECT '-' + LTRIM(Str(md.col2, 25, 2))
FROM mytable md
WHERE m.col1 = md.col1
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')
FROM mytable m
答案 1 :(得分:0)
这可能适合你
SELECT Col1, CAST(MIN(Col2) AS VARCHAR)+'-'+CAST(MAX(Col2) AS VARCHAR) AS Col2
FROM T_Table
GROUP BY Col1
答案 2 :(得分:0)
这是您的查询...
SELECT DISTINCT COL1, CAST(T1COL> T2COL然后T1COL的情况 ELSE T2COL END AS VARCHAR(50))+' - ' + CAST(T2COL时的情况> T1COL然后T1COL ELSE T2COL END AS VARCHAR(40)) FROM(SELECT T1.COL1, T1.COL2 T1COL, T2.COL2 T2COL 从表1 T1 INNER JOIN表1 T2 ON T1.COl1 = T2.COl1 和T1.Col2<> T2.Col2 )TblX;