HQL 不喜欢加号

HQL does not like plus character

  1. HQL 将 DATEADD(m,-1,GETDATE()) 解析为 DATEADD(m,-1,GETDATE())

  2. HQL 将 DATEADD(d,-1,GETDATE()) 解析为 DATEADD(d,-1,GETDATE())

  3. HQL 将 DATEADD(d,+1,GETDATE()) 解析为 DATEADD(d)

  4. HQL 将 DATEADD(h,+23,GETDATE()) 解析为 DATEADD(h)

所以我倾向于认为HQL不喜欢+字符。您能否提出解决方案?

P.S. DATEADD(d,+1,GETDATE()) 在 SQL 控制台中工作正常。

HQL 不是 SQL。

特别是 HQL 的语法与 SQL 的语法不同。

我没有找到HQL的正式语法,但有可能HQL的表达式+1不正确。

在这种情况下,您可以:

  • 使用原生 SQL 而不是 HQL
  • 写 1 而不是 +1 并继续使用 HQL