select list expression not produced by aggregation output (missing from GROUP BY clause?): asset_short_name
时间: 2024-03-06 19:48:51 浏览: 245
这个错误是因为在SELECT语句中没有将asset_short_name字段添加到GROUP BY子句中,而在SELECT语句中又使用了这个字段,导致SQL无法执行。
如果你想要同时查询asset_short_name字段和按照issuer_short_name和asset_code字段进行分组并求和,可以将asset_short_name字段添加到GROUP BY子句中,像这样:
```
SELECT asset_short_name, issuer_short_name, asset_code, TOTAL_ISSUED, next_call_day, maturity_date, SUM(settlement_nominal) AS total_settlement_nominal
FROM your_table_name
GROUP BY asset_short_name, issuer_short_name, asset_code, TOTAL_ISSUED, next_call_day, maturity_date
```
这样,就可以同时查询asset_short_name字段和对应的求和结果了。
相关问题
ORDER BY expression not produced by aggregation output (missing from GROUP BY clause?)
这个错误通常是由于在 GROUP BY 语句中未列出 SELECT 语句中的某个表达式,但是 SELECT 语句中使用了聚合函数(例如SUM、COUNT、AVG、MAX、MIN等)。
具体来说,如果您的SELECT语句中使用了聚合函数,并且同时使用了ORDER BY语句,并且ORDER BY语句中的表达式不在GROUP BY语句中,就会出现这个错误。
例如,如果您的SELECT语句如下所示:
```sql
SELECT column1, COUNT(column2)
FROM table_name
GROUP BY column1
ORDER BY column2;
```
在这种情况下,ORDER BY语句中的column2不在GROUP BY语句中,因此会出现错误。解决方法是将ORDER BY语句中的表达式添加到GROUP BY语句中:
```sql
SELECT column1, COUNT(column2)
FROM table_name
GROUP BY column1, column2
ORDER BY column2;
```
这样就可以避免出现这个错误了。
阅读全文