因此,我在一个连接到不同引擎(MySql,Oracle,PostgreSQL和MS SQL)的项目中拥有Hibernate 5.3.1,因此我不能使用本机查询。
假设我在一个表中有3条记录,所有记录都具有相同的日期时间,但是我需要将它们分组为[[仅按日期(而不是时间)。 例如,2019-12-04;
我执行此查询:SELECT
CONCAT(year(tx.date_), month(tx.date_), day(tx.date_)), iss.code
FROM
tx_ tx
JOIN
issuer_ iss
ON
tx.id_issuer = iss.id
GROUP BY
CONCAT(year(tx.date_), month(tx.date_), day(tx.date_)), iss.code
但是,当我测试它连接到SQL SERVER 2017时,它返回而不是返回20191204。在Oracle和MySQL中工作正常。任何人都知道为什么会这样吗?我尝试了不同的方法,例如使用2035
+
而不是CONCAT,但结果是相同的。我还尝试将它们提取为单独的(没有concat),并且它们一直返回正确的值。问题是,我需要按完成日期将它们分组。并且仅作记录,
该字段在DDBB中声明为datetime2
因此,我在一个连接到不同引擎(MySql,Oracle,PostgreSQL和MS SQL)的项目中拥有Hibernate 5.3.1,因此我不能使用本机查询。假设我在一个表中有3条记录,所有这些都...