Чтобы выбрать отдельные значения в одном столбце при возврате нескольких столбцов в запросе MS Access, вы можете использовать различные методы. Вот несколько подходов, которые вы можете использовать:
-
Метод подзапроса:
SELECT column1, column2, column3 FROM YourTable WHERE (column1, column2, column3) IN (SELECT DISTINCT column1, MAX(column2), MAX(column3) FROM YourTable GROUP BY column1)Этот метод использует подзапрос для выбора различных значений для столбца 1, а затем объединяет его обратно с исходной таблицей для получения нужных столбцов.
-
Метод внутреннего соединения:
SELECT t1.column1, t1.column2, t1.column3 FROM YourTable t1 INNER JOIN (SELECT column1, MAX(column2) AS max_column2, MAX(column3) AS max_column3 FROM YourTable GROUP BY column1) t2 ON t1.column1 = t2.column1 AND t1.column2 = t2.max_column2 AND t1.column3 = t2.max_column3Этот метод предполагает использование внутреннего соединения с производной таблицей, которая содержит различные значения для столбца 1, а также максимальные значения других столбцов.
-
Метод самостоятельного присоединения:
SELECT t1.column1, t1.column2, t1.column3 FROM YourTable t1 LEFT JOIN YourTable t2 ON t1.column1 = t2.column1 AND (t1.column2 < t2.column2 OR (t1.column2 = t2.column2 AND t1.column3 < t2.column3)) WHERE t2.column1 IS NULLЭтот метод использует самообъединение для выбора строк, в которых нет другой строки с тем же значением столбца1 и большим значением в других столбцах.
Эти методы предоставляют различные способы достижения желаемого результата в MS Access. Выберите тот, который соответствует вашим конкретным требованиям.