Скажем, у меня есть довольно большая таблица в базе данных Teradata, "Продажи", в которой есть ежедневная запись для каждой продажи, и я хочу написать оператор SQL, который ограничивает это только самой последней датой. Это не всегда будет предыдущий день, например, если это был понедельник, самой последней датой будет предыдущая пятница.
Я знаю, что могу получить следующие результаты:
SELECT s.*
FROM Sales s
JOIN (
SELECT MAX(SalesDate) as SalesDate
FROM Sales
) sd
ON s.SalesDate=sd.SalesDt
Я не знаю, как он будет обрабатывать подзапрос, и, поскольку Sales - это большая таблица, будет ли более эффективный способ сделать это, если нет другой таблицы, которую я мог бы использовать?