java - 如何通过我的公式从 MySQL 数据库中获取和排序行?
问题描述
我有表格帖子,其中列数量为 likes和date_time_of_creation,表格评论与post上的外键。主题“流行”应返回必须按公式排序(DESC)的帖子: 在此处输入图像描述
解决方案
SELECT p.*
,(0.33*quantity_of_likes + (SELECT count(*) FROM comment WHERE post_id = p.id))
/EXP(TIMESTAMPDIFF(DAY, date_time_of_creation, NOW()) / 7) AS popularity
FROM post p
ORDER BY popularity DESC
您可以尝试上面的查询,尽管您可能需要更改函数中的单位参数,因为TIMESTAMPDIFF
您没有指定减法结果应该是什么值类型。您可以使用MICROSECOND
(微秒)、、、、、、、、、SECOND
或中MINUTE
的HOUR
任何一个DAY
WEEK
MONTH
QUARTER
YEAR
推荐阅读
- macos - 使用键盘关闭 MacOS Big Sur 通知
- mongodb - Mongodb 由多个值聚合,但只限制其中一个
- python - Python/JSON TypeError:列表索引必须是整数或切片,而不是 str
- javascript - 输入内的 SVG 与粘贴的长文本重叠
- java - 我无法使暗/亮模式切换正常工作
- python - 如何在 django 中使用 panda 来规范化下面的 json
- sms - 在 vb.net 中使用 smart bro 插件发送批量短信
- flutter - 如何获取购物篮中所有商品的总价
- azure-data-explorer - 使用 kusto 查询语言每天或每月关闭多个虚拟机多长时间
- python - SQLAlchemy - 将动态表名传递给查询函数?