首页 > 解决方案 > 如何通过我的公式从 MySQL 数据库中获取和排序行?

问题描述

我有表格帖子,其中列数量为 likesdate_time_of_creation,表格评论与post上的外键。主题“流行”应返回必须按公式排序(DESC)的帖子: 在此处输入图像描述

标签: javamysql

解决方案


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或中MINUTEHOUR任何一个DAYWEEKMONTHQUARTERYEAR


推荐阅读