Задать вопрос
@khodos_dmitry

Почему при WHERE `d` = 0 выбирается строка со значением 'code: 404'?

`d` tinytext COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '0',
Пишу запрос :
SELECT * FROM `table` WHERE `d` = 0
выбирается строка со значением 'code: 404'
так не выбирается:
SELECT * FROM `table` WHERE `d` = '0'
Почему?
  • Вопрос задан
  • 55 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Melkij
@Melkij
PostgreSQL DBA
Потому что вообще не надо сравнивать строки и числа. Если поле строковое - сравнивайте только со строкой. Хоть при этом происходит и вполне задокументированное поведение.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы