2017-12-11 4 views
0

に私が表CONCATENATE列 - SQL

id1  id2 
---- ---- 
2  16 
null 11 
1  01 
10  32 

を持っています今、私はこれらの2つの列を連結する ' - '

id 
---- 
2-16 
11 
1-01 
10-32 

私は、単純な連結(でこれを試してみました)

FUNC

それが結果

select concat(id1,'-',id2)[id] 

id 
--- 
2-16 
-11//need only 11 not -11 
1-01 
10-32 

concat_ws()で試してみましたが、SQL Server 2008の関数ではありませんでした。 次にCOALESCE()と同じ結果になります。

条件文を使用して行うことができます。

しかし、それを行うには他の方法がありますか?

答えて

0

OracleのNVL機能を使用する別の方法があります。私はsqlserverの同等の機能はISNULLだと思います。

SELECT nvl(id1、 '')|| ' - ' || nvl(id2、 '') テーブルから。

+0

ありがとうございました。しかし、nvlはSQL Server 2008の組み込み関数ではありません – user7415073

関連する問題