Как сделать такую выборку

-faqer-

Я только учусь
Как сделать такую выборку

Добрый день подскажите как можно сделать такую выборку из таблиц с данными, допустим, о мобильных телефонах

PHP:
CREATE TABLE models (
  id int(11) NOT NULL auto_increment,
  title varchar(255) default NULL
) TYPE=MyISAM;

INSERT INTO models VALUES (1, 'Nokia');
INSERT INTO models VALUES (2, 'Samsung');

CREATE TABLE prices (
  id int(11) NOT NULL auto_increment,
  model int(11) default NULL,
  color varchar(255) default NULL,
  price int(11) default NULL
) TYPE=MyISAM;

INSERT INTO prices VALUES (1, 'White', 10);
INSERT INTO prices VALUES (1, 'Red', 20);
INSERT INTO prices VALUES (1, 'Black', 30);
INSERT INTO prices VALUES (2, 'Black', 90);
INSERT INTO prices VALUES (2, 'White', 70);
Т.е. в одной таблице идут наименования моделей, а в другой – цветовые исполнения этих моделей и цены на них

Как сделать выборку, которая даст следующий результат:
Nokia 10
Samsung 70

Т.е. вытянет из первой страницы уникальные наименования моделей, а из второй минимальную цену на каждую из моделей?

Заранее благодарю!
 

zerkms

TDD infected
Команда форума
[off]
хорошая, кстати, практика - при просьбе помощи выкладывать дампы
[/off]
 

Major

Новичок
[off]
zerkms

Кто-нить возмет и выложит тебе дамп в 100 метров =)
[/off]
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
[off]
Для этого есть paste :D :D :D
[/off]
 

-faqer-

Я только учусь
PHP:
SELECT m.*, MIN(p.price) AS min, p.color 
FROM `models` as m 
LEFT JOIN `prices` as p ON p.model = m.id 
GROUP BY m.id 
ORDER BY m.title ASC, p.price ASC
Выдает следующий результат
1|Nokia|10|White
2|Samsung|70|Black

Т.е. цены подтягивает нормально, а вот с цветом, который соответсвует минимальной цене ошибается. Тянет тот, который ему первый попадается. Как эту проблему решить?

Заранее спасибо
 

vonica

Новичок
Вот попробуй это
[SQL]
SELECT t1.*, `title` FROM models, prices AS t1,
(SELECT color, model, MIN(price) AS minprice FROM prices GROUP BY model) AS t2
WHERE t1.price=t2.minprice AND models.id=t1.model group by t1.model
[/SQL]
 

Апокалипсис

тех дир matras.ru
ага надо бы в правила вписать - те кто просит помочь со "сложными" запросами - пусть сразу тестовый дамп дают.
 
Сверху