猿问

每行包含查询的表

我正在寻找一些教程,向我展示如何使用 AJAX 制作好的表格。例如,我有获取用户的表和获取用户记录的表。


用户表


UserID | Name

=======|===========

000001 | Kristian

000002 | David

000003 | Tomas

000004 | Philip

000005 | John

运行表


UserID | RouteName | RunTime

============================

000001 | Route#001 | 45

000001 | Route#002 | 30

000001 | Route#003 | 20

000002 | Route#001 | 10

000002 | Route#002 | 5

000002 | Route#003 | 25

000003 | Route#001 | 25

000003 | Route#002 | 50

000004 | Route#002 | 100

000004 | Route#003 | 200

000003 | Route#001 | 300

我想创建一个表,您可以在其中查看特定用户 ID 的运行时每个 RouteName 的位置。


用户 ID 000001 的最终表


RouteName | RunTime | Position

==============================

Route#001 |    45   |   3/4

Route#002 |    30   |   2/4

Route#003 |    20   |   1/3

要在 PHP 中创建这样的表,需要一个查询来 SELECT 每个用户的每次运行,并且每行 2 个查询来计算位置和路由时间计数。


而且我没有几条路线,我有 500 多条路线,如果我在一次运行它需要匹配时间,所以我正在寻找一些使用 AJAX 和行分页的教程或帮助创建它。谢谢。


侃侃无极
浏览 66回答 1
1回答

慕运维8079593

您可以使用窗口函数:select *from (    select t.*,         rank() over(partition by routename order by runtime) rn,        count(*) over(partition by routename) cnt    from mytable t) twhere userid = 1这将选择给定的表的所有行userid,以及两个附加列:rn是用户在每条路线上的排名;最快的用户获得排名1,运行时间相同的用户获得相同的排名cnt是每条路线上出现的用户总数
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答