SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.12.2011 23:38:21

Марк
Активист
Зарегистрирован: 31.05.2010
Сообщений: 157

Записать в новую таблицу, статус товара с мин. ценой

Здравствуйте.. для примера у меня есть таблица с ценами от разных продавцов, тоесть если две или более записей имеют одинаковый id значит что эти записи относятся к одному товару...

price
--------------------
id  seller  price  available
1   5        240    есть
1   7        250    нет
2   8        270    есть
3   5        230    есть
3   7        220    нет

и таблица c продавцами

seller
--------------------
id  name
5  продавец1
7  продавец2
8  продавец3

мне необходима сформировать таблицу из этих данных таким образом

price_min
-------------------
id  min  max count  available  seller
1   240  250  2        есть        продавец1
2   270  270  1        есть        продавец3
3   220  230  2        нет          продавец2

тоесть минимальная и максимальная цена на товар (для одного товара может быть хоть сто цен), колличество цен, статус товара с мин. ценой(есть/нет)
и продавец товара с мин. ценой
Что касается  min  max count с этим мне уже помогли, делаю так. А с available  seller разобраться не получается

select id,min(price) `min`,max(price) `max`,
count(price) `count` from price group by id

Неактивен

 

#2 20.12.2011 07:31:51

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5833

Re: Записать в новую таблицу, статус товара с мин. ценой

join полученной выборки с таблицей price по полям id и min(price) для получения seller и available, и ещё один join с таблицей seller по одноименному полю для получения имя продавца.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson