我搜索了这个错误并修改了我的查询,并在聚合函数中按列使用了我的订单.可能是由于对sql的了解较少,我无法捕捉到此错误的确切含义.
我的表中有以下列:
- [ID]
- [POST_ID]
- [用户身份]
- [photo_id]
- [photo_group_id]
- [album_id]
我的查询:
SELECT TOP 3 MAX(share.id) as share_id, share.user_id
FROM share
WHERE share.post_id = 5468
GROUP BY share.user_id
ORDER BY share.id desc
Run Code Online (Sandbox Code Playgroud)
我正在使用聚合函数中的列按顺序显示它
"share.id"列在ORDER BY子句中无效,因为它不包含在聚合函数或GROUP BY子句中.
任何帮助将不胜感激.:)
Rob*_*her 11
该列未包含在SELECTed中......我会将ORDER BY更改为聚合列:
ORDER BY MAX(share.id) DESC
Run Code Online (Sandbox Code Playgroud)
或者select中列的索引:
ORDER BY 1 DESC
Run Code Online (Sandbox Code Playgroud)
share.id 无效,因为您在select语句中使用了别名。
尝试share_id像这样使用代替:
SELECT TOP 3 MAX(share.id) as share_id, share.user_id
FROM share
WHERE share.post_id = 5468
GROUP BY share.user_id
ORDER BY share_id DESC
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11123 次 |
| 最近记录: |