I joined two tables and tried to get a max timestamp value of two timestamp fields. This is my SQL statement:
SELECT
rts.DataLakeModified_DateTime,
rtt.DataLakeModified_DateTime,
(
SELECT MAX(DataLakeModifiedDateTime)
FROM VALUES(rts.DataLakeModified_DateTime), (rtt.DataLakeModified_DateTime) AS AllDates (DataLakeModifiedDateTime)
) AS DataLakeModifiedDateTime
FROM RetailTransactionSalesTrans_Full rts
LEFT JOIN RetailTransactionTable_Full rtt
ON rtt.TRANSACTIONID = rts.TRANSACTIONID
AND rtt.CHANNEL = rts.CHANNEL
AND rtt.STORE = rts.STORE
AND rtt.TERMINAL = rts.TERMINALID
But it has an error:
Error in SQL statement: AnalysisException: cannot evaluate expression outer(rts.DataLakeModified_DateTime) in inline table definition; line 6 pos 17
I'm using Spark3.2.1 and MSSQL database. And I'm running it on Azure Databricks notebook using 104 LTS cluster (include Apache Spark3.2.1, Scala 2.12).
Do you have any solution to solve this problem?