У меня есть 2 таблицы, таблица продуктов и таблица изображений. Продукты могут иметь более 1 изображения на запись. Мне нужен оператор SQL, в котором будет отображаться 1 изображение для каждого продукта, а не все изображения для каждого продукта.
Сокращенный пример моих текущих усилий:
SELECT Product.RefCode, Img.ImgPath
FROM Product INNER JOIN (
SELECT ProductImg.ImgPath, ProductImg.PrdFK
FROM ProductImg
LIMIT 0,1) AS Img ON Product.PrdID = Img.PrdFK;
Приведенный выше пример возвращает 0 результатов, однако, если я удаляю LIMIT 0,1 из Sub SELECT, я получаю полный список всех продуктов и всех изображений.
Я просто хочу, чтобы была возвращена 1 запись изображения для каждой записи продукта.
Я изменил код "программиста" в MySQL, и он отлично работает.
SELECT Product.RefCode,
(Select ProductImg.ImgPath
From ProductImg
Where Product.PrdID = Img.PrdFK LIMIT 0,1) AS ImgPath
FROM Products
По какой-то причине при попытке решения "Билла Карвина" он долго отправлял загрузку сервера.