0

发现很难理解 mysql 语法以从数据库中检索数据 - 数据具有“等级”,需要从最高等级到最低等级进行排序。

如果两行或多行之间存在匹配的评级编号,我需要能够随机化这些行,但将它们保留在列表的整体顺序中。

基本上我有一个“代理”表,一个按邮政编码的“agent_coverage”表,以及一个包含数字评级的“评级”表。要对其进行伪代码,我需要:-

1.select agent_id, rating from agent, rating, agent_coverage where agent_coverage.postcode = postcode and rating.agent_id = agent_id GROUP BY rating.rating ORDER BY rating.rating DESC

  1. 然后我需要检查组中是否有多个结果

  2. 如果组中有多个,我需要对组进行洗牌并按从高到低的顺序返回数据。

因此,如果 BOB 的评分为 100,JOE、SYLVIA、FRED 和 BARBARA 的评分均为 98,而 RICHARD 的评分为 96,则 BOB 将始终在返回的结果中排名第一 - RICHARD 将始终在结果中排​​在最后,但另一个位置每次都是随机的。

希望那更清楚一点。

4

0 回答 0