VictorKr
Новичок
Вернуть значения, которые имеют максимальный охват другого поля
Добрый день,
таблица:
DROP TABLE IF EXISTS `test`;
CREATE TABLE `test` (
`name` varchar(100) NOT NULL,
`keyword` varchar(100) NOT NULL,
UNIQUE KEY `unic` USING BTREE (`name`,`keyword`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `test` (`name`,`keyword`) VALUES
('груша', 'фрукт'),
('яблоко', 'фрукт'),
('капуста', 'овощ'),
('картофель','овощ'),
('груша', 'зеленый'),
('капуста', 'зеленый'),
('яблоко', 'зеленый');
Запрос должен вернуть:
keyword
-------
зеленый
овощ
логика следующая:
так как в "зеленый" входят все "фрукт", "фрукт" возвращать не надо.
т.е. вернуть нужно ключевые слова, которые имеют максимальный охват поля "name"
MySql v.5.0.41
Добрый день,
таблица:
DROP TABLE IF EXISTS `test`;
CREATE TABLE `test` (
`name` varchar(100) NOT NULL,
`keyword` varchar(100) NOT NULL,
UNIQUE KEY `unic` USING BTREE (`name`,`keyword`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `test` (`name`,`keyword`) VALUES
('груша', 'фрукт'),
('яблоко', 'фрукт'),
('капуста', 'овощ'),
('картофель','овощ'),
('груша', 'зеленый'),
('капуста', 'зеленый'),
('яблоко', 'зеленый');
Запрос должен вернуть:
keyword
-------
зеленый
овощ
логика следующая:
так как в "зеленый" входят все "фрукт", "фрукт" возвращать не надо.
т.е. вернуть нужно ключевые слова, которые имеют максимальный охват поля "name"
MySql v.5.0.41