SQL查询按故障分组

SQL查询按故障分组,sql,select,group-by,Sql,Select,Group By,我试图显示在某个时期内报价的数量,对每个报价的预测求和,并按创建报价的人对其进行分组。下面是我的问题…但我认为我对分组犯了错误,但我不知道是什么。我使用的是标准的SQL2008。任何帮助都将不胜感激 SELECT CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, SUM(Forecast) AS Amount_Forecast, quotes.createdby FROM

我试图显示在某个时期内报价的数量,对每个报价的预测求和,并按创建报价的人对其进行分组。下面是我的问题…但我认为我对分组犯了错误,但我不知道是什么。我使用的是标准的SQL2008。任何帮助都将不胜感激

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby
FROM 
    Quotes   
WHERE 
    quotes.created>=? AND quotes.created<=?
Group by 1
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby
从…起
引用
哪里

quotes.created>=?和quotes.created您需要在GROUPBY子句中使用
createdby

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby FROM Quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
Group by createdBy
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby FROM quotes
哪里

quotes.created>=?和quotes.created您需要在GROUPBY子句中使用
createdby

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby FROM Quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
Group by createdBy
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby FROM quotes
哪里

quotes.created>=?和quotes.created您需要在GROUPBY子句中使用
createdby

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby FROM Quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
Group by createdBy
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby FROM quotes
哪里

quotes.created>=?和quotes.created您需要在GROUPBY子句中使用
createdby

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby FROM Quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
Group by createdBy
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby FROM quotes
哪里

quotes.created>=?和quotes.created您的错误是由于您正在按聚合进行分组。您可以按列编号分组,但第一列包含count()


您可以将1更改为3,也可以使用列名。

您的错误是由于您正在按聚合进行分组。您可以按列编号分组,但第一列包含count()


您可以将1更改为3,也可以使用列名。

您的错误是由于您正在按聚合进行分组。您可以按列编号分组,但第一列包含count()


您可以将1更改为3,也可以使用列名。

您的错误是由于您正在按聚合进行分组。您可以按列编号分组,但第一列包含count()


您可以将1更改为3,也可以使用列名。

GROUP BY
子句中,必须包括
SELECT
子句中的列

如果要按创建预测的人员汇总预测,您应该喜欢并推荐:

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby 
FROM quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
GROUP BY quotes.createdby
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby
引述
哪里

quotes.created>=?和引号。创建=?和引号。在
GROUP BY
子句中创建,必须包括
SELECT
子句中的列

如果要按创建预测的人员汇总预测,您应该喜欢并推荐:

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby 
FROM quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
GROUP BY quotes.createdby
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby
引述
哪里

quotes.created>=?和引号。创建=?和引号。在
GROUP BY
子句中创建,必须包括
SELECT
子句中的列

如果要按创建预测的人员汇总预测,您应该喜欢并推荐:

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby 
FROM quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
GROUP BY quotes.createdby
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby
引述
哪里

quotes.created>=?和引号。创建=?和引号。在
GROUP BY
子句中创建,必须包括
SELECT
子句中的列

如果要按创建预测的人员汇总预测,您应该喜欢并推荐:

SELECT 
    CAST(COUNT (DISTINCT QUOTES.Quote) AS SQL_CHAR) AS Number_of_Quotes, 
    SUM(Forecast) AS Amount_Forecast, 
    quotes.createdby 
FROM quotes
WHERE 
    quotes.created>=? AND quotes.created<=? 
GROUP BY quotes.createdby
选择
强制转换(计数(不同引号.Quote)为SQL字符)为引号的数量,
总额(预测)作为金额_预测,
quotes.createdby
引述
哪里

quotes.created>=?和引号。创建=?和quotes.CREATED您能把表结构和一些插入项放在测试中吗?我看不出您的SQLIf
createdby
中有错误。这是您的第一列,它应该可以工作。您可以将表结构和一些插入内容放入测试中吗?我看不出您的SQLIf
createdby
中有错误。这是您的第一列,它应该可以工作。您可以将表结构和一些插入内容放入测试中吗?我看不出您的SQLIf
createdby
中有错误。这是您的第一列,它应该可以工作。您可以将表结构和一些插入内容放入测试中吗?我看不到您的SQLIf
createdby
中的错误。它应该是您的第一列。事实未实现事实未实现事实未实现事实未实现事实未实现事实未实现事实未实现