У меня есть таблица с 20 строками и одной строки имеют, например:Как выбрать уникальные массивы из строки таблицы MySQL?
2,3,5,6,8,22
2,3,5,6,8,22,44,55
etc.
Как я могу выбрать из MySQL строки таблицы только уникальные номера, не дублируется, так что результаты являются:
2,3,5,6,8,22,44,55
Стол определение:
CREATE TABLE IF NOT EXISTS `test` (
`id` int(11) NOT NULL auto_increment,
`active` tinyint(1) NOT NULL default '1',
`facilities` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `test` (`id`, `active`, `facilities`) VALUES
(1, 1, '1,3,5,6,7,8'),
(2, 1, '2,3,4,5,8,9'),
(3, 1, '4,5,6,7,9,10');
Вот моя попытка:
SELECT DISTINCT facilities FROM test WHERE active='1'
$dbgeneral= explode(',', $row['facilities']);
$facilities = array(
"Air Conditioning" => "2",
"Balcony" => "4");
foreach ($facilities as $facilities=> $v) {
if(in_array($v,$dbgeneral)) {
echo '';
}
}
Это одно поле с номерами, разделенными запятой? –
Вы могли бы показать таблицу Определение? Ответ SSince althane of different может быть правильным, но каждый из ваших «строк» содержит только 1 поле? или их несколько полей? – Doon
Вот мой стол: ID 2 - 3 - 5 \t объекты 1,2,3,4,5,8,9 - 1,7,9,11,13 - 4,5,6 , 9,10 – Stipe