[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите с сортировкой.
HErATuB
Всем привет. Что то не магу сделать сортировку...
Вот таблицы:
1 таблица товаров(goods)
id | part | name | ... | sort

1 | 2 | название 1 | ... | 1
2 | 2 | название 2 | ... | 1
3 | 2 | название 3 | ... | 1
4 | 2 | название 4 | ... | 1

2 Таблица цен (price)
id | id_goods | name | price

1 | 1 | название 1 | 100.00
2 | 1 | название 2 | 150.00
3 | 2 | название 3 | 200.00
4 | 2 | название 4 | 250.00

И вот мене нужно получить все товары определенного каталога и сортировать по sort и по минимальной цене (Причем цена должна быть одна).
Вот что в голову приходит:

SELECT *
FROM `goods` as t1,
`price` as t2
WHERE `t1`.`part`='2' AND
`t1`.`id`=`t2`=`id_goods`
ORDER BY `t1`.`sort`, `t2`.`price`

нужно сюда еще включить что бы цена была минимальная. Как это сделать уже не знаю.
johniek_comp
select *.g, *.p
from goods g
left join price p
on
g.id = p.id_goods
where g.part = 2
order by g.sort, p.price desc


_____________
user posted image
HErATuB
Цитата (johniek_comp @ 1.11.2013 - 08:42)
select *.g, *.p
from goods g
left join price p
on
g.id = p.id_goods
where g.part = 2
order by g.sort, p.price desc

не подойдет так как нужно только 1 цену, минимальную.
Гость_джоник
Я не понял насчет минимальной
exotica
Непонятно указал требования, укажи конкретнее

_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Guest
select g.*, min(p.price) ... group by g.id order by g.sort, min(p.price)
Aeq
Цитата (Guest @ 5.11.2013 - 00:23)
select g.*, min(p.price) ... group by g.id order by g.sort, min(p.price)

Омг. С телефона без авторизации написал
dr.nomore
ORDER BY `t1`.`sort`, `t2`.`price`


вот так

ORDER BY `t1`.`sort` ASC, `t2`.`price` DESC


Или наоборот. Это не важно. Важно что после каждого идентификатора обязательно должно быть ключевое слово.

Когда поле 1 - можно без него, по умолчанию ASC. Когда сортировка по нескольким полям - повсюду надо указывать куда.
Aeq
Цитата (dr.nomore @ 6.11.2013 - 19:41)
ORDER BY `t1`.`sort`, `t2`.`price`


вот так

ORDER BY `t1`.`sort` ASC, `t2`.`price` DESC


Или наоборот. Это не важно. Важно что после каждого идентификатора обязательно должно быть ключевое слово.

Когда поле 1 - можно без него, по умолчанию ASC. Когда сортировка по нескольким полям - повсюду надо указывать куда.

с чего бы вдруг. ASC всегда по умолчанию, хоть одно, хоть много полей. проблема у человека была в том что цен у него много по каждому товару, решается группировкой.
dr.nomore
Ага, тупанул.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.