Я хочу выбрать первое значение столбца во внутреннем соединении для каждого успешного соединения.
@getEndDate = SELECT c.CustomerId, c.ProductId FROM @customer AS c
INNER JOIN (SELECT (DateTime?) EndDate AS EndDate, (int) CustomerId AS CustomerId
FROM @Installation
ORDER BY EndDate FETCH 1 ROW OFFSET 0 ROWS) AS i ON c.CustomerId == i.CustomerId
Делая это, я получаю EndDate с наименьшей EndDate в @Installation, где соблюдается циретия соединения.
Как я могу получить только первое значение из подзапроса внутреннего соединения для каждого успешного соединения?
2 ответа
Вы можете применить функцию FIRST_VALUE к INNER JOIN SELECT:
Проверь это: https://docs.microsoft.com/en- мы / у- SQL / функция / аналитическая / первое значение
Выберите выполнение следующих действий во внутреннем подзапросе соединения:
(SELECT (DateTime?) MAX(EndDate) AS EndDate, (int) CustomerID AS CustomerID FROM
@Installation GROUP BY CustomerID)
Работает в моем случае.
Похожие вопросы
Новые вопросы
azure-data-lake
Azure Data Lake Analytics - это набор из трех служб больших данных в Microsoft Azure: HDInsight, Data Lake Store и Data Lake Analytics. Эти полностью управляемые сервисы позволяют легко приступить к работе и легко масштабировать задания с большими данными, написанные на Hive, Pig, Spark, Storm и U-SQL.