2015年8月21日 星期五

SQL like query for nchar field

Reference:
SQL Server char and nchar columns search differently

狀況:
MS SQL DB Table 有一個欄位 TB007 是 nchar(10) 型態,裡面有一筆資料是 DR0019A。
用 select * from table where TB007 like '19A' 查詢回覆 0 筆資料。

原因:
nchar(10) 會把資料後面補空白變成 10 個字元,所以實際上那筆資料是 'DR0019A   '。

解法:
加上 RTRIM 去掉空白的部份。
select * from table where RTRIM(TB007) like '19A'

沒有留言:

張貼留言