Вместо null в таблицу вставляется 0000:00:00

Всем добрый вечер,
Я с помощью php вставляю в БД данные, вот таким образом :

INSERT INTO TarificationLogs(serviceID, msisdn, msisdnType, currentStatus, datetimeStarted, datetimeTrialEnded, datetimeStoped, datePaidUntil, datetimeLastCharge, datetimeLastSuccessCharge, langID, isSubscribedAtOperatorSide, url, response) VALUES('100','37433555425','UNKNOWN','SUSPEND','2021-02-18 13:54:49','NULL','NULL','2022-03-12','2021-08-19 13:15:13','2021-07-23 00:59:58','','0','test','NULL')

И в БД всё выгдлядит так :

введите сюда описание изображения


Как сделать так что-бы вместо 0000:00:00 был null?
И да, изменить запрос не получится, так как мы не знаем какая именно значение null а какая нет.

Вот структура БД

введите сюда описание изображения


Ответы (1 шт):

Автор решения: O'tkir Xo'jayev

у меня есть несколько идей

COALESCE(col,'0000:00:00') - принимает первое ненулевое значение
create triger - проверить нулевой столбец при вставке

INSERT INTO TarificationLogs(serviceID, msisdn, msisdnType, currentStatus, datetimeStarted, datetimeTrialEnded, datetimeStoped, datePaidUntil, datetimeLastCharge, datetimeLastSuccessCharge, langID, isSubscribedAtOperatorSide, url, response) VALUES('100','37433555425','UNKNOWN','SUSPEND','2021-02-18 13:54:49','NULL','NULL','2022-03-12','2021-08-19 13:15:13','2021-07-23 00:59:58','','0','test',COALESCE('NULL','0000:00:00'))

будет задано значение по умолчанию, но, к сожалению, оно получит нулевое значение.

→ Ссылка