2011-03-22 95 views
1

連接字符串我想連接字符串包含空值

我想輸出是這樣的:

NEX-SYM-VIM-CRE 

如果輸入NEX-NULL-NULL-VRE,它出來是NEX---CRE---CRENEX---,因爲我有替換爲NULL-

但是連接得到像NEX-SYM這樣的最終結果未來

回答

3

像這樣的東西?

ISNULL(NEX,'-') + '-' + ISNULL(SYM,'-') + '-' + ISNULL(VIM,'-') + '-' + ISNULL(CRE,'-') 
+1

用於解密問題的 – 2011-03-22 09:19:49

+2

哈哈,我不知道我做了什麼,但有時候你得和你一起去吧:) – 2011-03-22 09:31:46

2

總是一個-分隔字符添加到右側,但只有當有一個值:

NULLIF(
     COALESCE(NEX + '-', '') 
      + COALESCE(SYM + '-', '') 
      + COALESCE(VIM + '-', '') 
      + COALESCE(CRE + '-', ''), '' 
    ) 

,那麼你總是需要修剪的最後一個字符(將是一個-分隔字符),除非結果是NULL