SQL查询以逗号分隔的形式结束

时间:2018-06-06 20:34:19

标签: sql sql-server tsql

这个问题有点傻,但我真的有点被困在这里。 我正在做一个简单的选择查询,尝试将其与其他查询联合起来,最后将它们保存为视图。 但是,只要我使用'创建视图',查询结果将变为带逗号而不是行的行。我知道如何将查询表转换为逗号结果,但我不知道如何使查询结果保持表格格式。

这是表格: enter image description here

以下是我的查询以获得结果并合并结果:

SELECT DISTINCT SUBSTRING(serialnumber, 34, 9), 'PCBA-10215-0001', testrunstarttime
FROM  [dbo].[boardtestresults1_full_view]
WHERE partnumber = 'PCBA-10215-0001' AND overalltestrunstatus = 'pass'
GROUP BY serialnumber, testrunstarttime
HAVING Count(DISTINCT combined) >= 97
UNION
-- 1946 / 2189
SELECT DISTINCT SUBSTRING(serialnumber, 34, 9), 'PCBA-10214-0001', testrunstarttime
FROM  [dbo].[boardtestresults1_full_view]
WHERE partnumber = 'PCBA-10214-0001' AND overalltestrunstatus = 'pass'
GROUP BY serialnumber, testrunstarttime
HAVING Count(DISTINCT combined) >= 107

enter image description here

这是我创建视图的查询,它搞砸了所有内容。

CREATE VIEW TEST5 AS 
-- 2042/2052
SELECT DISTINCT SUBSTRING(serialnumber, 34, 9) AS col_1, 'PCBA-10215-0001'AS col_2, testrunstarttime
FROM  [dbo].[boardtestresults1_full_view]
WHERE partnumber = 'PCBA-10215-0001' AND overalltestrunstatus = 'pass'
GROUP BY serialnumber, testrunstarttime
HAVING Count(DISTINCT combined) >= 97
UNION
-- 1946 / 2189
SELECT DISTINCT SUBSTRING(serialnumber, 34, 9)AS col_1, 'PCBA-10214-0001'AS col_2, testrunstarttime
FROM  [dbo].[boardtestresults1_full_view]
WHERE partnumber = 'PCBA-10214-0001' AND overalltestrunstatus = 'pass'
GROUP BY serialnumber, testrunstarttime
HAVING Count(DISTINCT combined) >= 107

enter image description here

即使我删除代码并在执行后输入新行,我也会得到这样的结果。

SELECT DISTINCT SUBSTRING(serialnumber, 34, 9)AS col_1, 'PCBA-10214-0001'AS col_2, testrunstarttime
FROM  [dbo].[boardtestresults1_full_view]
WHERE partnumber = 'PCBA-10214-0001' AND overalltestrunstatus = 'pass'
GROUP BY serialnumber, testrunstarttime
HAVING Count(DISTINCT combined) >= 107

enter image description here

有没有人有任何想法?我非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

感谢@scsimon在命令中回答了我的问题。我不小心点击了“结果到文字”按钮。我不敢相信我花了一个小时来讨论这个愚蠢的问题。