I am using Room in Android and done as below in my dao file :
@Query("select DISTINCT timeStamp, batteryId, status " +
"from (select batteryDetails.*, " +
"lag(status) over (partition by batteryId order by timeStamp) as oldStatus " +
"from batteryDetails) batteryDetails " +
"where status is null or oldStatus <> status")
suspend fun getHistoryEventsData(): List<BatteryDetailsHistory>?
While executing above query, Getting below error :
error: no viable alternative at input '(select batteryDetails.*, lag(status) over (' public abstract java.lang.Object getHistoryEventsData(@org.jetbrains.annotations.NotNull() ^ extraneous input '(' expecting {, ';', K_ALTER, K_ANALYZE, K_ATTACH, K_BEGIN, K_COMMIT, K_CREATE, K_DELETE, K_DETACH, K_DROP, K_END, K_EXPLAIN, K_INSERT, K_PRAGMA, K_REINDEX, K_RELEASE, K_REPLACE, K_ROLLBACK, K_SAVEPOINT, K_SELECT, K_UPDATE, K_VACUUM, K_VALUES, K_WITH, UNEXPECTED_CHAR}
There might be some issue in query syntax. Please guide.