sql >> Databasteknik >  >> RDS >> Mysql

SQL-fel:1064, SQLState:42000 i @Query - JPA, MySQL, Hibernate

Du kan inte använda toLocalDate() direkt i JPQL. Ett enklare sätt att fixa denna beräknade start på dagen och slutet av dagen för localdate och gör mellan fråga med hjälp av dem.

LocalDateTime startOfDay = localDate.atTime(LocalTime.MIN);
LocalDateTime endOfDay = localDate.atTime(LocalTime.MAX);

och fråga som c.start between BETWEEN :startOfDay AND :endOfDay

@Query("SELECT new com.proctorio.webtracker.entity.WebsiteDailyTotal(c.domain, SUM(c.duration)) " 
       +"FROM SuperStatEntityTime AS c WHERE c.start between BETWEEN :startOfDay AND :endOfDay GROUP BY c.domain ORDER BY c.domain ASC")
public List<WebsiteDailyTotal> countTotalDomainUsageByDay2(@Param("startOfDay") LocalDateTime startOfDay,
                                                           @Param("endOfDay") LocalDateTime endOfDay);



  1. Varför kopplar du inte Android till databasen direkt?

  2. Hur man använder ALL Logical Operator i SQL Server - SQL Server / TSQL Tutorial Del 126

  3. Varför är vissa typer av förberedda frågor som använder PDO i PHP med MySQL långsamma?

  4. Konvertera månadsnummer till månadsnamn i PostgreSQL