1
我有一列的長度必須是6位數。我想弄清楚的問題是這樣的: 如果列包含任何空格或0,或只是一個空間,然後我需要排除從查詢結果記錄:SQL Server刪除空格,零和空格的記錄
Column A
964015
00279R
0
25015
0
352
8290
0
結果必須是:
Column A
964015
00279R
C25015
C00352
C08290
我對小於6位的部分進行了編碼,但是排除0,空格和空白的部分就是我卡住的部分。任何提示都表示讚賞。這裏是我的代碼的部分:
CREATE TABLE #Hello([Column A] varchar(6))
INSERT INTO #Hello VALUES('00279R')
INSERT INTO #Hello VALUES('35269')
INSERT INTO #Hello VALUES('0')
INSERT INTO #Hello VALUES(' ')
INSERT INTO #Hello VALUES('')
INSERT INTO #Hello VALUES('352')
INSERT INTO #Hello VALUES('8290')
SELECT (Case When Len([Column A]) = 5 THEN 'C' + [Column A]
WHEN Len([Column A]) = 4 THEN 'C' + '0' + [Column A]
WHEN Len([Column A]) = 3 THEN 'C' + '00' + [Column A]
WHEN Len([Column A]) = 2 THEN 'C' + '000' + [Column A]
WHEN Len([Column A]) = 1 THEN 'C' + '0000' + [Column A]
WHEN Len([Column A]) = 0 THEN 'C' + '00000' + [Column A]
ELSE [Column A] END)
FROM #Hello
什麼樣的SQL Server魔術是?非常感謝。完美的作品。非常感激。 – user3221917
@ user3221917:我很高興能夠提供幫助,以下是關於STUFF的MSDN文檔(http://technet.microsoft.com/zh-cn/library/ms188043.aspx)。 –