Учитывая следующий оператор select:
select starttime,id
from childattendance
where endtime is null
and starttime is not null
and date < date('2018-05-24')
and companyid = 1414;
Получаю ли я те же результаты в 100% случаев, если я изменил это на следующее:
select starttime,id
from childattendance
where endtime is null
and starttime >= ''
and date < date('2018-05-24')
and companyid = 1414;
Мне кажется, что если поле имеет ненулевое значение, оно всегда больше или равно пустой строке, а не так?
И если это так, то что работает лучше?
Оба оператора никогда не могут быть равными, поскольку в mysql NULL сильно отличается от "". Когда поле равно NULL, это означает, что значение не было установлено для этого fied. С другой стороны, если значение поля равно "", то оно также говорит о том, что поле имеет пустую строку в качестве значения.