powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите составить запрос
2 сообщений из 2, страница 1 из 1
Помогите составить запрос
    #38338303
hrustbb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеются две таблицы
shop_products
с полями
shop_products.id //ид товара
shop_products.name //наименование товара

и shop_photos
с полями
shop_photos.id //ид фотки
shop_photos.products_id //ид товара от которого эта фотка
shop_photos.name //имя файла
shop_photos.head //главное ли изображение

Связь "один ко много" по shop_products.id = shop_photos.products_id
В таблицах хранятся товары и фотки к ним
Нужно составить запрос позволяющий вывести это в таком виде

products_id | name
------------------
1 | rewr.jpg
2 | null
3 | null
4 | ghgh.jpg

те если среди фото привязанных к данному товару имеется фото с shop_photos.head = 1 то в name выводить это фото, а если нет, то null
...
Рейтинг: 0 / 0
Помогите составить запрос
    #38338323
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hrustbb,

если признак shop_photos.head - не повторяется в пределах shop_photos.products_id то так

Код: sql
1.
2.
3.
select t1.id, t2.name
from shop_products t1 left join shop_photos t2
on t1.id=t2.products_id and t2.head=1 


если возможны повторы head - то ещё добавится group by t1.id и min/max(t2.name)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите составить запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]