Может кто-нибудь объяснить мне, почему с этим запросом:Выбор по VARCHAR колонки с IN() часть в состоянии и INT значение возвращает все строки
SELECT * FROM `tags` WHERE (tag IN ('willa-lentza', 2016))
это вернуть мне все строки из tags
таблицы, но когда я ставлю 2016
в кавычки он работает хорошо?
tag
column varchar
type.
ОБРАЗЦА СРЕДЫ
CREATE TABLE `tags` (
`id` int(10) unsigned NOT NULL auto_increment,
`tag` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8
INSERT INTO `tags` (`id`, `tag`) VALUES
(1, '2016'),
(2, 'plum'),
(3, 'banana'),
(4, 'apple'),
(5, 'willa-lentza');
Я также получаю ту же ошибку, как у Roland Боуман:
Truncated incorrect DOUBLE value: 'willa-lentza'
Is представляет собой автономный запрос или часть хранимой процедуры? – Quassnoi
Автономный через Mysql Query Browser – hsz
На моем '5.1.35' это возвращает правильные результаты:' 2' записывает как с кавычками, так и без них. Какую версию вы используете? – Quassnoi