我有一個查詢,它拉出不同的資料,但對于一個欄位,它連接它,因為在我的資料庫中,URL是部分填充的
select blah, blah2, blah3, concat('https://my_url.com'/span>, g.logourl ) as logourl
但問題是如果logourl是空白的,那么我只得到https://my_url.com,而不是完整的URL。這正在產生下游的影響。
是否有辦法只在logurl不為空時進行連接?
uj5u.com熱心網友回復:
你可以嘗試使用case when運算式
select blah, blah2, blah3。
case when g.logourl is not null or g. logourl<>''
then concat('https://my_url.com'/span>, g.logourl ) end as logourl
uj5u.com熱心網友回復:
你可以使用:
(case when g. logourl 是 不是 null then 'https://my_url. com' || g.logourl
end) as logourl
如果你想避免一個空字串(和NULL),你可以使用:
(case when g. logourl <> '' then 'https://my_url.com' || G.logourl
end) as logourl
如果你想消除一串空格:
(case when replace(g.logourl, ', ') <> '' then 'https://my_url.com' ||g.logourl
end) as logourl
uj5u.com熱心網友回復:
如果你想在logurl為null時,輸出為null,那么你可以使用concat operator ||,而不是concat()函式
select 'a'/span> || null;
?column?
----------
(1 row)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/332030.html
標籤:
