在 select 语句中将 DISTINCT 和 RANK() 函数一起用于不同的值是否正确?

问题描述 投票:0回答:0

我们可以在不同值的选择语句中同时使用 DISTINCT 和 RANK() 函数吗?让我们来看2个场景 1.使用 RANK() 和 DISTINCT 2.仅使用 RANK() 。 在这两种情况下,我们会得到相同的不同值吗?

SELECT distinct
 col1,
 col2,
 col3,
 col4,
 row_number () over (partition by col1, col2 ORDER BY col3) RN
FROM table)
WHERE rn = 1```;

```SELECT * FROM (
SELECT
 col1,
 col2,
 col3,
 col4,
 row_number () over (partition by col1, col2 ORDER BY col3) RN
FROM table) 
WHERE rn = 1;```
sql plsql distinct ranking-functions
© www.soinside.com 2019 - 2024. All rights reserved.