Sql server TSQL如何按文字分组?
我将这个问题简化为一个非常简单的形式:Sql server TSQL如何按文字分组?,sql-server,tsql,group-by,Sql Server,Tsql,Group By,我将这个问题简化为一个非常简单的形式: SELECT 'A' AS [Literal] UNION SELECT 'B' AS [Literal] GROUP BY [Literal] 我得到的信息是: 味精207,16级,状态1,第7行 列名“Literal”无效 我试过了,结果也一样: SELECT t.literal FROM (SELECT 'A' AS [Literal]) t UNION SELECT 'B' GROUP BY [Literal] 如果要按联合分组,则需要
SELECT
'A' AS [Literal]
UNION
SELECT
'B' AS [Literal]
GROUP BY
[Literal]
我得到的信息是:
味精207,16级,状态1,第7行
列名“Literal”无效
我试过了,结果也一样:
SELECT
t.literal FROM
(SELECT 'A' AS [Literal]) t
UNION
SELECT
'B'
GROUP BY
[Literal]
如果要按
联合分组,则需要一个派生表:
SELECT X.[Literal], [Count] = COUNT(*)
FROM(
SELECT [Literal] = 'A'
UNION ALL
SELECT [Literal] = 'B'
) X
GROUP BY X.[Literal]
您可以使用cte
;WITH cte AS (
SELECT
'A' AS [Literal]
UNION
SELECT
'B' AS [Literal])
SELECT [Literal]
FROM cte
GROUP BY [Literal]
你有其他栏目吗,还是只有这一个?没有,这是错误的。这是OP曾经做过的,但不起作用。groupby
仅应用于第二个Select。如果第一个是错误的,您可以简单地将其编辑掉。我认为这样做显然是站不住脚的…:嗯,编辑不仅仅是为了添加新内容和为旧内容道歉谢谢,这就是票。