|
|
|
| У меня такая задача:
Есть 2 таблицы
1. equip - содержит каталог оборудования с полями типа: артикул, название, производитель, цена и т.д.
2. equip_parametr - содержитcz информация по параметрам для оборудования. в ней 3 поля id_equip (идентификатор товарной позиции), id_parametr(идентификатор параметра), znachenie (значение данного параметра для данной позиции)
мне нужно сделать выборку из таблицы equip и отсортировать всё по полю znachenie из таблицы equip_parametr для которого id_parametr задано ($idparam)
то, что я написал ниже - неправильно (подвыражение в скобках), но это поможет понять, что я хочу сделать.
SELECT equip.ID_Equip FROM equip,equip_parametr
WHERE equip.ID_Equip=equip_parametr.ID_Equip
ORDER BY (equip_parametr.Znachenie WHERE equip_parametr.ID_Parametr='".$idparam."') ASC";
|
не подскажете, как эту задачу можно осуществить? | |
|
|
|
|
|
|
|
для: rprint-max
(06.10.2006 в 15:26)
| |
SELECT equip.ID_Equip FROM equip,equip_parametr
WHERE equip.ID_Equip=equip_parametr.ID_Equip AND equip_parametr.ID_Parametr='".$idparam."'
ORDER BY equip_parametr.Znachenie ";
|
| |
|
|
|
|
|
|
|
для: Artemy
(06.10.2006 в 16:44)
| | это выберет только те строки, у которых
equip_parametr.ID_Parametr='".$idparam."'
|
у некоторых товарных позиций вообще этот параметр может быть не прописан,соответственно для них нет записей в таблице equip_parametr
а мне надо вывести все строки оборудования, а отсортировать по значению этого параметра | |
|
|
|
|
|
|
|
для: rprint-max
(06.10.2006 в 15:26)
| | Парни, поздравьте меня!
Придумал сам, как это сделать, почитав много разных постов здесь и мануал на www.mysql.ru !
SELECT equip.ID_Equip
FROM equip,(SELECT * FROM equip_parametr WHERE equip_parametr.ID_Parametr='".$idparam."') as new_equip_parametr
WHERE equip.ID_Equip=new_equip_parametr.ID_Equip
ORDER BY new_equip_parametr.Znachenie ASC"; | |
|
|
|