我正在尝试编写一个返回列中最短字符串值的查询.例如:如果ColumnA具有值ABCDE,ZXDR,ERC,则查询应返回"ERC".我写了以下查询,但我想知道是否有更好的方法来做到这一点?
查询应返回单个值.
select distinct ColumnA from
(
select ColumnA, rank() over (order by length(ColumnA), ColumnA) len_rank
from TableA where ColumnB = 'XXX'
)
where len_rank <= 1
Run Code Online (Sandbox Code Playgroud)
怎么样:
select ColumnA
from
(
select ColumnA
from tablea
order by length(ColumnA) ASC
)
where rownum = 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13576 次 |
| 最近记录: |