|
|
|
|
|
для: OLi
(17.08.2012 в 02:33)
| | Вопрос снят | |
|
|
|
|
|
|
|
для: OLi
(17.08.2012 в 02:09)
| | Остался вопрос. Допустим я из cars таблицы вывожу 4 поля, но в JOIN указываю связь других полей. Скажем cars.id_cars=cars_images.id_cars
Как прописать для cars.id_cars=cars_images.id_cars возвращаемое поле? | |
|
|
|
|
|
|
|
для: OLi
(17.08.2012 в 02:05)
| | Помог JOIN LEFT - срасибо | |
|
|
|
|
|
|
|
для: Sfinks
(17.08.2012 в 01:32)
| | Убрал ORDER WHERE LIMIT, возвращает пустой массив | |
|
|
|
|
|
|
|
для: OLi
(17.08.2012 в 01:34)
| | Правильно будет так:
SELECT `cars`.`id_cars`, `cars`.`price`, `cars`.`name`, `cars`.`year` FROM (`cars`)
JOIN `regions` ON `regions`.`id_region` = `cars`.`region`
JOIN `cars_colors` ON `cars_colors`.`id_color` = `cars`.`color`
JOIN `cars_condition` ON `cars_condition`.`id_cond` = `cars`.`condition`
JOIN `transport_caterories` ON `transport_caterories`.`id_transport` = `cars`.`category`
JOIN `cars_cat` ON `cars_cat`.`id_cat` = `cars`.`cat`
JOIN `cars_images` ON `cars_images`.`id_images` = `cars`.`image`
WHERE `cars`.`status` = '1' ORDER BY `cars`.`id_cars` desc
|
Ошибок уже нету - но запись не выводит | |
|
|
|
|
|
|
|
для: Sfinks
(17.08.2012 в 01:32)
| | Теперь такая:
Column 'id_cars' in field list is ambiguous
SELECT `id_cars`, `price`, `name`, `year` FROM (`cars`)
JOIN `regions` ON `id_region` = `cars`.`region`
JOIN `cars_colors` ON `id_color` = `cars`.`color`
JOIN `cars_condition` ON `id_cond` = `cars`.`condition`
JOIN `transport_caterories` ON `id_transport` = `cars`.`category`
JOIN `cars_cat` ON `id_cat` = `cars`.`cat`
JOIN `cars_images` ON `id_images` = `cars`.`image`
|
| |
|
|
|
|
|
|
|
для: OLi
(17.08.2012 в 01:23)
| | А в остальных?
Попробуйте для проверки заменить все JOIN на LEFT JOIN и убрать WHERE, ORDER BY и LIMIT.
По результату будет видно где нестыковка.
SELECT `id_cars`, `price`, `name`, `year` FROM (`cars`)
JOIN `regions` ON `id_region` = `cars`.`region` JOIN `cars_colors` ON `id_color` = `cars`.`color`
JOIN `cars_condition` ON `id_cond` = `cars`.`condition`
JOIN `transport_caterories` ON `id_transport` = `cars`.`category`
JOIN `cars_cat` ON `id_cat` = `cars`.`cat` WHERE `status` = '1'
ORDER BY `id_cars` desc LIMIT 20
|
И зачем (`cars`) в скобках? | |
|
|
|
|
|
|
|
SELECT `id_cars`, `price`, `name`, `year` FROM (`cars`)
JOIN `regions` ON `id_region` = `cars`.`region` JOIN `cars_colors` ON `id_color` = `cars`.`color`
JOIN `cars_condition` ON `id_cond` = `cars`.`condition`
JOIN `transport_caterories` ON `id_transport` = `cars`.`category`
JOIN `cars_cat` ON `id_cat` = `cars`.`cat` WHERE `status` = '1'
ORDER BY `id_cars` desc LIMIT 20
|
В таблице cars есть 1 запись | |
|
|
|
|