Я пытаюсь вернуть 1 запись на одного клиента вместе с первой записью из другой таблицы (продукта). Таблицы объединены с таблицей пересечений, а дата, когда я использую min (date) on, является датой ввода пользователем.sql min дата, возвращающая более 1 записи
Мой sql будет работать отлично, за исключением того, что я заметил там несколько клиентов, которые имеют более одной записи в таблице продуктов с той же датой, поэтому они возвращаются более одного раза. Я хочу просто вернуть один продукт на одного клиента. База данных - это оракул, поэтому я попытался использовать rownum, но затем возвратил только 1 запись для всего запроса, поэтому я, очевидно, не использую его правильно. Это мой SQL
SELECT cust.ROW_ID prod.NAME, prod.DATE
FROM cust INNER JOIN ProdCust on cust.ROW_ID = ProdCust.CUST_ID
INNER JOIN prod on ProdCust .PROD_ID = Prod.ROW_ID
INNER JOIN
(SELECT ProdCust.CUST_ID, MIN (Prod.DATE) minDate
FROM ProdCust, Prod
WHERE ProdCust.PROD_ID = Prod.ROW_ID
GROUP BY CUST_ID
) ProdCustMin on ProdCust.CUST_ID = ProdCustMin.CUST_ID AND prod.DATE = ProdCustMin.minDate
отлично! благодаря –