列 'tbl_Stock.Item_Name' 在 select 列表中无效,因为它未包含在聚合函数或 GROUP BY 子句中
Column 'tbl_Stock.Item_Name' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause
我有一个名为 tbl_stock 的数据库 table。
例如:
Order_ID Item_Name Item_Stock Item_Dispatched Item_Avaliable
........ .......... .......... ............... ..............
1 abc 10 2 8
2 abc 13 7 6
3 abc 23 10 13
4 xyz 43 12 31
5 xyz 4 1 3
我想在 gridview 中得到一个输出,如下所示:
Item_Name Item_Stock Item_Dispatched Item_Avaliable
......... .......... ............... ..............
abc 46 19 27
xyz 47 13 33
我想计算特定的列值。使用下面给出的 SQL 查询时显示一个错误。错误是“Column 'tbl_Stock.Item_Name' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
”
SQL :
SELECT DISTINCT Item_Name,
COUNT(Item_Stock) AS Item_Stock,
COUNT(Item_Dispatched) AS Item_Dispatched,
COUNT(Item_Avaliable) AS Item_Avaliable
FROM tbl_Stock
如错误所述,添加 GROUP BY 以计算每个项目的总计
SELECT /*DISTINCT*/ Item_Name,
SUM(Item_Stock) AS Item_Stock,
SUM(Item_Dispatched) AS Item_Dispatched,
SUM(Item_Avaliable) AS Item_Avaliable
FROM tbl_Stock
GROUP BY Item_Name
在 DISTINCT 中也不需要。
COUNT()
函数将 return 数字或行(Item_Stock、Item_Dispatched 和 Item_Avaliable 列中的 abc 项为 3,xyz 为 2),所以为了得到想要的结果改变它并使用 SUM()
按子句添加分组而不是不同的,例如:
SELECT Item_Name,
SUM(Item_Stock) AS Item_Stock,
SUM(Item_Dispatched) AS Item_Dispatched,
SUM(Item_Avaliable) AS Item_Avaliable
FROM tbl_Stock
GROUP BY Item_Name
它将按 Item_Name 对所有记录进行分组,并对每一列进行 SUM。
我有一个名为 tbl_stock 的数据库 table。
例如:
Order_ID Item_Name Item_Stock Item_Dispatched Item_Avaliable
........ .......... .......... ............... ..............
1 abc 10 2 8
2 abc 13 7 6
3 abc 23 10 13
4 xyz 43 12 31
5 xyz 4 1 3
我想在 gridview 中得到一个输出,如下所示:
Item_Name Item_Stock Item_Dispatched Item_Avaliable
......... .......... ............... ..............
abc 46 19 27
xyz 47 13 33
我想计算特定的列值。使用下面给出的 SQL 查询时显示一个错误。错误是“Column 'tbl_Stock.Item_Name' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
”
SQL :
SELECT DISTINCT Item_Name,
COUNT(Item_Stock) AS Item_Stock,
COUNT(Item_Dispatched) AS Item_Dispatched,
COUNT(Item_Avaliable) AS Item_Avaliable
FROM tbl_Stock
如错误所述,添加 GROUP BY 以计算每个项目的总计
SELECT /*DISTINCT*/ Item_Name,
SUM(Item_Stock) AS Item_Stock,
SUM(Item_Dispatched) AS Item_Dispatched,
SUM(Item_Avaliable) AS Item_Avaliable
FROM tbl_Stock
GROUP BY Item_Name
在 DISTINCT 中也不需要。
COUNT()
函数将 return 数字或行(Item_Stock、Item_Dispatched 和 Item_Avaliable 列中的 abc 项为 3,xyz 为 2),所以为了得到想要的结果改变它并使用 SUM()
按子句添加分组而不是不同的,例如:
SELECT Item_Name,
SUM(Item_Stock) AS Item_Stock,
SUM(Item_Dispatched) AS Item_Dispatched,
SUM(Item_Avaliable) AS Item_Avaliable
FROM tbl_Stock
GROUP BY Item_Name
它将按 Item_Name 对所有记录进行分组,并对每一列进行 SUM。