SELECT good_name FROM tbl_goods INNER JOIN tbl_images ON tbl_goods.good_id=tbl_images.good_id
WHERE image_path IS NOT NULL
GROUP BY good_name
Обработка двух таблиц в постгресе
Есть такая задачка :
Есть две таблицы : 1-я - таблица с товарами, 2-я - таблица с фото товаров.
Структура таблицы с товарами (tbl_goods) :
good_id - уникальный ID товара
good_name - наименование товара
good_type - тип товара
Структура таблицы с фото (tbl_images) :
image_id - уникальный ID фото
good_id - идентификатор товара
image_path - имя файла с фото товара
Одному товару может соответствовать множество фотографий. Товар может не иметь фото.
Необходимо составить sql-запрос, чтобы можно было отсеять все товары у которых нет фото. Хотел заюзать этот запрос :
Код:
SELECT g.*, i.*, COUNT(i.image_id) as count_images
FROM tbl_goods g
LEFT OUTER JOIN tbl_images i ON g.good_id=i.good_id
GROUP BY
g.good_id, g.good_name, g.good_type,
i.image_id, i.good_id, i.image_path
ORDER BY count_images DESC, g.good_id DESC
FROM tbl_goods g
LEFT OUTER JOIN tbl_images i ON g.good_id=i.good_id
GROUP BY
g.good_id, g.good_name, g.good_type,
i.image_id, i.good_id, i.image_path
ORDER BY count_images DESC, g.good_id DESC
но ругается на count_images. Кто юзал такого рода запросы, хелп плиззз!?
БД : PostgreSQL 8.1.4
Спасибо.
Код: