1
我想創建一個ComparableExpression,它將在生成的SQL中以配置的DBMS的方言生成日期時間文字。 我讀過這篇文章:How to get fully materialized query from querydsl,它爲Long值產生一個文字,但我沒有看到一個產生日期或日期時間的例子。日期文字格式是不同的DBMS特有的。QueryDsl ComparableExpression使用SQL方言生成DateTime文字
所以在WHERE語句我想這一點:
dbo.fact_table.tx_date >= {formatted date literal}
對於{格式化日期文字},我要生成:
'19931123 00:00:00' (for MSSQL)
和
Timestamp '1993-11-23 00:00:00' (for Teradata)
我得到的最接近的是:
Expressions.dateTimeTemplate(Date.class, "{0}", alreadyFormattedDateString);
但是我必須自己格式化日期。我想提供Date對象並獲取querydsl來執行格式化。