这是针对 PrestoSQL 的
假设 col1, col2, col3 具有相同的基数,并假设 Table 有 N 行
SELECT c1 from Table, UNNEST(col1) AS t(c1)
SELECT c1, c2 from Table, UNNEST(col1, col2) AS t(c1, c2)
SELECT c1, c2, c3 from Table, UNNEST(col1, col2, col3) AS t(c1, c2, c3)
这三个查询的时间复杂度有何不同?就时间复杂度而言,第三个的成本会比第一个高 N^3 倍,而第二个的成本会比第一个高 N^2 倍吗?
如何根据列基数和表大小来衡量时间复杂度?