MySQL не может соответствовать нулевому полю - PullRequest
2 голосов
/ 05 июля 2019

MySQL не будет обновлять пустое или пустое поле, но выглядит нормально, если я добавлю что-то в поле перед рукой.

UPDATE trip set MYZID=concat(MYZID, '1,') WHERE id=93

Ответы [ 3 ]

3 голосов
/ 05 июля 2019

Функция concat(), как указано в документации:

возвращает NULL, если любой аргумент равен NULL

чтобы заставить его работать, используйте coalesce():

UPDATE trip set MYZID=concat(coalesce(MYZID, ''), '1,') WHERE id=93
2 голосов
/ 05 июля 2019

С https://dev.mysql.com/doc/refman/8.0/en/string-functions.html#function_concat

CONCAT () возвращает NULL, если любой аргумент равен NULL.

1 голос
/ 05 июля 2019

Вы должны использовать функцию ifnull и установить для нее пустую строку в случае нуля

UPDATE trip set MYZID=concat(ifnull(MYZID, ''), '1,') WHERE id=93
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...