我不能夠得到一組在DLT管道使用sql命令來工作。
我從這個文檔複製代碼https://docs.m.eheci.com/workflows/delta-live-tables/delta-live-tables-sql-ref.html sql-spec(下麵相關代碼)。當我運行類似,得到空值$ {startDate可以}。任何方式設置一個變量為sql DLT管道內部一個筆記本嗎?
這是文檔的代碼
設置startDate可以= ' 2020-01-01 ';創建或刷新生活表過濾從src,日期> SELECT * $ {startDate可以}
這是我試著運行的代碼:
設置startDate可以= ' 2020-01-01 ';創建或刷新生活表過濾的SELECT *(選擇“2021-01-01”日期)日期> $ {startDate可以}
這是我的dlt管道運行時錯誤消息。這是設置$ {startDate可以}空字符串。它工作當我設置裏麵的配置值的設置dlt管道但當我在筆記本中指定它。
嗨@Oliver騰,自日期列不屬於任何表的查詢,日期> $ {startDate可以}的條件將導致一個錯誤。
為了解決這個問題,你可以直接刪除子查詢和指定的值“2021-01-01”
在WHERE子句中:
設置startDate可以= ' 2020-01-01 ';創建或刷新生活表過濾的SELECT *(選擇“2021-01-01”日期)“2021-01-01”> $ {startDate可以};
或者你可以修改包括日期列在一個表子查詢:
設置startDate可以= ' 2020-01-01 ';創建或刷新生活表過濾的SELECT *(選擇“2021-01-01”日期(選擇1)——添加一個* * * * *表創建一個單行子查詢)t,日期> $ {startDate可以};
在這個例子中,我們添加一個* * * * *表與子查詢單個行創建一個表別名t和單個列的日期。我們可以參考日期在WHERE子句中。