Заменить значения в SQL - PullRequest
       5

Заменить значения в SQL

1 голос
/ 17 апреля 2020

Я посмотрел на замену значений в SQL и нашел ISNULL в качестве потенциального решения, но столкнулся с ошибками синтаксиса по любой причине. Я полагаю, это потому, что я комбинирую это с другой функцией REPLACE () одновременно.

У моих данных есть как случайные 1, так и NULL, которые я хотел бы установить по умолчанию на ноль. Следующий код работает для удаления 1, но я не могу заставить работать вторую строку .... Есть идеи почему?

REPLACE(Credit,1, 0) Credit

Не работает:

ISNULL(REPLACE(Credit,1, 0),0) Credit

Запрос :

 SELECT ID, Name, Class,
 REPLACE(REPLACE(Gender,'M', 'Male'), 'F', 'Female') Gender,
 REPLACE(Credit,1,0) Credit
 FROM mySQL
 WHERE State = 'MO'

1 Ответ

1 голос
/ 17 апреля 2020

Вы должны сначала проверить значения NULL, а затем использовать replace()

REPLACE(ISNULL(Credit, 0),1, 0) Credit

ИЛИ

REPLACE(COALESCE(Credit, 0),1, 0) Credit

Для SQLLite использовать следующее

IFNULL(mycolumn, 0)

больше информации здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...