[SQL ] MS-SQL可否刪除特定字元及其後的文字?

看板Database作者 (pupx1000你他媽雜碎)時間15年前 (2010/09/29 10:03), 7年前編輯推噓2(203)
留言5則, 2人參與, 最新討論串1/1
大叔初學SQL,保證不是學校作業 是說大叔這個年紀如果還能去學校念書的話,應該會很高興吧 好,進入主題 上一題問了刪除"-",用REPLACE就可以了(REPLACE是好物啊) 這次是要問寫view時可不可以刪除"-",及"-"後面的文字呢? MS-SQL 2005 ID Prod        ID Prod 1 XXXX-NNN      1 XXXX 2 NN-XXXX   變成  2  NN 3 X-NNNNN       3 X 4 NNNN-XX       4 NNNN 5 N-XX 5 N 拜謝先進 改成 CASE WHEN CHARINDEX('-', Prod) > 0 THEN SUBSTRING(Prod, 0, CHARINDEX('-', Prod)) ELSE Prod END 就可以了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.130.132.178

09/29 10:17, , 1F
SUBSTRING(Prod, 0, CHARINDEX('-', Prod))
09/29 10:17, 1F

09/29 10:39, , 2F
可是如果ID6 是NNNN(沒有-)的話,用這串語法ID6就消失了
09/29 10:39, 2F

09/29 11:06, , 3F
現在Prod有一堆因為(沒有-),所以是空白的了
09/29 11:06, 3F

09/29 14:38, , 4F
前面可以加 CASE WHEN CHARINDEX('-',Prod)>0 判斷
09/29 14:38, 4F

09/29 16:09, , 5F
真的可以了 感謝您!!
09/29 16:09, 5F
※ 編輯: elic2577 (123.194.97.49), 05/11/2018 17:14:07
文章代碼(AID): #1Cefvmmj (Database)