表1に以下のレコードがあります
c1 c2 c3
----------
A B C
c1 c2とc3をマージして、出力が
出力の間にスペースがあるABCconcat関数を使用しましたが、次のような3つの引数を取りません。
select concat (c1,c2,c3) from table1
select * from table1
1列に出力したいので実行できません
最近同じ問題に遭遇しました。 || を使用しました。(二重パイプ)列に連結するため。
この問題を解決するには、クエリにラッパーを記述する必要もありました。
以下は、私のクエリが最終的にどのように見えるかのスニペットです。
select a1 || a2 as a2, a3 || a4 as a4 --wrapper 2
from (
select '"service":"' as a1,a2, '","total":' as a3, a4 --wrapper 1
from (
select distinct(a2),count(*) as a4
from abc.table
group by a2
order by a2)
);
以下は、クエリからの出力です。
"service":"ABC" , "total":123
try this.
select concat(concat (c1,c2),c3) from table1
SQL から DB2 への変換で問題が発生しました。このページは役に立ちましたが、最終的に少し変更を加えました。
SELECT
RTRIM(C1) || '' || C2 as CFULL
FROM TABLE