У меня есть таблица, содержащая набор чисел, разделенных запятой.
Я хотел бы получить строки из таблицы, где точное число, а не частичное число находится внутри строки.
Пример:
CREATE TABLE IF NOT EXISTS `teams` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`uids` text NOT NULL,
`islive` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
INSERT INTO `teams` (`id`, `name`, `uids`, `islive`) VALUES
(1, 'Test Team', '1,2,8', 1),
(3, 'Test Team 2', '14,18,19', 1),
(4, 'Another Team', '1,8,20,23', 1);
Я бы хотел найти где 1 в строке.
В настоящее время, если я использую Contains или LIKE, он возвращает все строки с 1, но 18, 19 и т. Д. Не равен 1, но содержит 1.
Я настроил здесь sqlfiddle
Мне нужно сделать регулярное выражение?