Если вы хотите получить минимальное значение за item
за каждый столбец (это то, что показывают ожидаемые результаты), то:
SELECT ITEM,
MIN(LOC) AS LOC,
MIN(status) AS status,
MIN(qty) AS qty
FROM table_name
GROUP BY item
Если вы хотите получить значение для элемента, которые являются минимумом на определенный порядок, то:
SELECT ITEM,
MIN(LOC) KEEP (DENSE_RANK FIRST ORDER BY your_criteria) AS LOC,
MIN(status) KEEP (DENSE_RANK FIRST ORDER BY your_criteria) AS status,
MIN(qty) KEEP (DENSE_RANK FIRST ORDER BY your_criteria) AS qty
FROM table_name
GROUP BY item
Или, если вы хотите, чтобы быть все из тех же строк, то:
SELECT item, loc, status, qty
FROM (
SELECT t.*,
ROW_NUMBER() OVER (PARTITION BY item ORDER BY your_criteria) AS RN
FROM table_name t
)
WHERE RN = 1;
группы по пункту и использовать max или min для других столбцов –
Как выбрать значения LOC, STATUS и QTY? Все из той же строки (которая) или другой стратегии? – jarlh