Mysql错误:#1247 – 不支持引用’karma'(引用组函数)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Mysql错误:#1247 – 不支持引用’karma'(引用组函数),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1112字,纯文字阅读大概需要2分钟。
内容图文
这是我下面的mysql查询.通过许多有用的问题和评论,我几乎在旅程的最后.这个查询背后的想法是用户提交一个链接,应用程序插入两行,一行插入链接,另一行插入投票(默认投票,为什么用户不投票为自己的提交?)然后每一次投票只是另一行在投票表中有一个karma_up或karma_down等于1(很快就会更改为karma_delta以保存额外的列.我也有流行算法,似乎是我的查询.运行以下查询保证我这个错误.
#1247 - Reference 'karma' not supported (reference to group function)
这个问题的大部分内容都是为了获得业力
SELECT links.*, (SUM(votes.karma_up) - SUM(votes.karma_down)) AS karma
FROM links, votes
WHERE links.id = votes.link_id
GROUP BY votes.link_id
ORDER BY (karma - 1) / POW((TIMESTAMPDIFF(HOUR, links.created, NOW()) + 2), 1.5) DESC
LIMIT 0, 100
如果没有ORDER BY部分的流行度算法,则查询运行完美,从投票表中添加总和业力,并使用其值添加额外列.
解决方法:
问题出在这里:
`ORDER BY karma...
您不能通过定义为别名的内容进行排序.试试这个:
`ORDER BY ((SUM(votes.karma_up) - SUM(votes.karma_down)) - 1) / POW((TIMESTAMPDIFF(HOUR, links.created, NOW()) + 2), 1.5) DESC`
希望DB能够计算出不要对它进行两次评估.如果没有,请先使用不带顺序的内部选择来创建别名,然后使用另一个选择进行排序.
内容总结
以上是互联网集市为您收集整理的Mysql错误:#1247 – 不支持引用’karma'(引用组函数)全部内容,希望文章能够帮你解决Mysql错误:#1247 – 不支持引用’karma'(引用组函数)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。