Я хочу показать пустое поле '' вместо значения нуля поля Expression. Если exp имеет тип данных INT. всякий раз, когда я пытаюсь использовать (случай, когда exp1 равен 0, тогда «else exp1 end как exp1), но он все равно получает 0 в качестве output.any помощь оценивается. Спасибозаменить 0 пустым пространством
ответ
Если exp
- это числовой тип, вам нужно будет преобразовать его в строку, используя CAST
or CONVERT
. Кроме того, я не верю, что exp1 is 0
будет работать; Я думаю, что вы ищете exp1 = 0
.
Попробуйте что-то вроде этого так:
(case when exp1 = 0 then '' else cast(exp1 as varchar(30)) end) as exp1
(case when exp1 = 0 then '' else convert(varchar(30), exp1) end) as exp1
Или, используя простой CASE
выражение, например:
(case exp1 when 0 then '' else cast(exp1 as varchar(30)) end) as exp1
(case exp1 when 0 then '' else convert(varchar(30), exp1) end) as exp1
Примечание: По умолчанию длина для varchar
и nvarchar
в CAST
и CONVERT
30, так что cast(exp1 as varchar)
или convert(varchar, exp1)
тоже будет работать, но, как на практике, лучше всего указывать длины этих типов всякий раз, когда вы используете t рубчик.
Однако, если то, что вы хотели бы сделать, это преобразовать значение 0 null
, это довольно легко. Просто используйте NULLIF
:
nullif(exp1, 0) exp1
Это вернет NULL
если exp1
значение 0, в противном случае она возвращает значение exp1
. Когда вы вставляете это значение в таблицу, убедитесь, что столбец, в который вы его вставляете, имеет значение NULL. Если вы не знакомы с использованием null, обратитесь к Wikipedia article по этой теме для получения дополнительной информации.
[Пожалуйста, не ленитесь о varchar vs. varchar (n)] (http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/09/bad-habits-to -kick-declaring-varchar-without-length.aspx) –
@AaronBertrand У меня на самом деле был 'varchar (30)' сначала, но он упал, чтобы сделать код более компактным и потому, что я думал, что OP предпочтет это. Но вы правы, лучше быть откровенным в этих вещах. Во всяком случае, спасибо за статью. –
показывается как 0 в этом поле. У меня есть исходный стол, где высота и вес находятся в varchar() и таблице назначения, а высота и вес - в числовом(). Я хочу вставить исходные данные в пункт назначения. Но проблема здесь в том, что поле высоты и веса постоянно появляется в ноль в месте назначения, когда оно не имеет значения. Я просто хочу, там пусто идентификатор высота вес b25 146 162 t41 135 G89 201 TableB-назначения идентификатор высота вес b25 146 162 t41 135 0 G89 0 201 – user3502587
Я использовал RegEx
{
cast(trim(
replace(to_char(value),'0','')) as int)
}
- 1. Заменить% 20 с пустым пространством
- 2. XML заменить пустым пространством на значение
- 3. Как заменить^М с пустым пространством С ++
- 4. javascript, чтобы заменить значение элемента пустым пространством
- 5. Заменить текст нежелательного нижнего колонтитула пустым пространством
- 6. как заменить дефис пустым пространством/пробелом? php
- 7. Заменить/**/в Unix с пустым пространством
- 8. Как заменить следующий символ пустым пространством?
- 9. pyspark/dataframe: заменить null пустым пространством
- 10. Заменить некоторую часть предложения с пустым пространством
- 11. C# Как заменить 0 (ноль) с пространством
- 12. Заменить нулевые ячейки 0 или пустым
- 13. Заменить «0» пустым символом в строке
- 14. MVC3 ASP Заменить нулевое значение пустым пространством в представлении
- 15. Заменить строку слово с пустым пространством с JS
- 16. Заменить все запятые пустым пространством в csv error
- 17. Grep/не SED заменить ни одного совпадения с пустым пространством
- 18. Заменить буквенно-цифровые символы, числовые значения с пустым пространством
- 19. Что такое регулярное выражение, чтобы заменить все «System.out.println()» пустым пространством?
- 20. Как заменить все заглавные буквы пустым пространством в строке
- 21. Заполнение массива следующим пустым пространством?
- 22. заменить строку с пространством
- 23. Замените 0 пустым и пустым
- 24. PHP str_replace() - Заменить альтернативным пространством?
- 25. Как заменить «» "с пространством
- 26. Заменить введите с пространством
- 27. Синтаксический XML с пустым пространством имен
- 28. Проверка схемы XML с пустым пространством имен
- 29. Невозможно использовать префикс с пустым пространством имен
- 30. заменить "\" "пустым символом
Не совсем уверен, что вы спрашиваете здесь. Не могли бы вы отправить код, который вы пробовали? – paqogomez
Возможно, вы захотите использовать ключевые слова 'CAST()' или 'CONVERT()'. –
У меня есть поля, ids - varchar, но высота и вес - тип interger. прямо сейчас я получаю 0s для высоты и веса, если нет значений (с использованием case case). Но я хочу пустое поле в этих полях – user3502587