假设我有以下模式来记录职业网球比赛的结果:
DATE, PLAYER_ID, RESULT, SURFACE
像搜索 PLAYER_ID 这样的简单查询将在 O(log(n)) 时间内运行,使用标准的二进制搜索或类似方法。假设像 PostgreSQL 或 MySQL 这样的关系数据库系统并假设有一个适当索引的表,以下查询的时间复杂度是多少:
Retrieve all players where the result of the last match was a WIN and the last five surfaces have all been 'CLAY'.
我用英语而不是 SQL 编写了查询,但我希望它足够清楚。