У меня есть столбец, длина которого должна быть 6 цифр. Проблема, которую я пытаюсь выяснить это: , если столбец содержит какие-либо пробелы или 0s или просто пространство, то мне нужно, чтобы исключить эту запись из результата запроса: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: Я рад, что могу помочь, и вот [документация MSDN по STUFF] (http://technet.microsoft.com/en-us/library/ms188043.aspx). –