select coalesce(
(
select num
from mynumbers
group by num
having count(num)=1
order by num desc
limit 1
),null) num
这是我本来的思路:
COALESCE
函数会返回参数列表里第一个非 NULL
的值。若所有参数皆为 NULL
,则返回 NULL
。
但是运行速度太慢了,可以尝试:
with t as
(
select num
from mynumbers
group by num
having count(num)=1
order by num desc
limit 1
)
select max(num) as num from t;