4
有没有什么办法从HQL的日期中提取年份(1-366)?是唯一选择扩展我需要的方言并明确注册功能吗?我发现HSQL和DB2方言有一天的注册,但没有与Oracle或SQL Server的运气...HQL中的一年中的哪一天?
据我所知,唯一的标准日期部分功能是年(),月(), ()等,除非我遗漏了一些东西,这些都不足以计算DOY ...
有没有什么办法从HQL的日期中提取年份(1-366)?是唯一选择扩展我需要的方言并明确注册功能吗?我发现HSQL和DB2方言有一天的注册,但没有与Oracle或SQL Server的运气...HQL中的一年中的哪一天?
据我所知,唯一的标准日期部分功能是年(),月(), ()等,除非我遗漏了一些东西,这些都不足以计算DOY ...
据我所知,唯一的解决办法是扩大现有的方言。这原来是相当无痛的:
public class SQLServerDialect extends org.hibernate.dialect.SQLServerDialect {
public SQLServerDialect() {
registerFunction("dayofyear", new SQLFunctionTemplate(Hibernate.INTEGER, "datepart(dayofyear, ?1)"));
}
}