-1

Oracle では、次の 3 つのクエリのうちどれが最も効率的ですか。

SELECT DISTINCT a, b
FROM tab  

SELECT a, b
FROM tab
GROUP BY a, b

SELECT a, b
FROM
(SELECT a, b, row_number() OVER (PARTITION BY a, b ORDER BY a, b) rn
 FROM tab )
WHERE rn = 1
4

1 に答える 1

1

最初のものは正しい選択です。他の方法は、同じ目的を達成するための風変わりで非標準的な (そして少しひねくれた) 方法だからです。

于 2012-04-28T10:51:16.150 に答える