У меня есть одна ко многим связанным таблицам; таблица продуктов и их изображения по ProductID. Изображения могут существовать для идентификатора продукта, одного или нескольких, или не существовать вообще. Поэтому я оставил внешнее соединение с ними, если изображения не существуют, запись будет нулевой.
Я выбираю их по идентификатору категории, что означает, что могут быть и другие продукты, поэтому я не смог использовать топ 1.
мой запрос:
select p.ID,p.ProductName,pc.CategoryID, pic.BigPath
from tbl_Products p
LEFT join tbl_ProductToCategory pc on p.ID = pc.ProductID
left outer join tbl_ProductImages pic on pic.ProductID = p.ID
where pc.CategoryID = 1174
Выше запроса получает все продукты с несколькими записями из-за таблицы ProductImages.
Мне нужно получить одну запись из таблицы изображений товаров; например: тот, который имеет минимальный идентификатор изображения.
Выше запрос получает эти:
ID ProductName CategoryID BigPath
311 a 1174 www.blabla.com/cdn/a..
313 b 1174 www.blabla.com/cdn/b..
318 c 1174 www.blabla.com/cdn/c1..
318 c 1174 www.blabla.com/cdn/c2..
318 c 1174 www.blabla.com/cdn/c3..
Я ожидаю:
ID ProductName CategoryID BigPath
311 a 1174 www.blabla.com/cdn/a..
313 b 1174 www.blabla.com/cdn/b..
318 c 1174 www.blabla.com/cdn/c1..
Как я могу получить одну запись из таблицы ProductImages?