Замена NULL и пустой строки в операторе Select
У меня есть столбец, который может иметьNULL
или пустое пространство (т.е.''
) ценности. Я хотел бы заменить оба этих значения на допустимое значение, как'UNKNOWN'
, Различные решения, которые я нашел, предлагают изменить значение в самой таблице. Однако в данном случае это не вариант, поскольку база данных предназначена для стороннего приложения, которое разработано и / или исправлено очень плохо (на самом деле я думаю, что мой Ротвейлер мог бы работать лучше). Я обеспокоен тем, что изменение базовых данных может привести к тому, что приложение растает в дыре для курения.
Я попытался варианты следующих команд:
COALESCE(Address.COUNTRY, 'United States') -- Won't replace empty string as it is not NULL
REPLACE(Address.COUNTRY, '', 'United States') -- Doesn't replace empty string
ISNULL(Address.COUNTRY, 'United States') -- Works for NULL but not empty string
Я знаю, что мог бы использоватьCASE
заявление но янадеясь есть гораздо более элегантное / эффективное решение.
Вы'Мне придется довериться мне, когда я скажу, что искал решение своей конкретной проблемы и не нашел ответа. Если я что-то упустил, пожалуйста, покажи мне освещенный путь.