I want to remove duplicate through row_number
function based on
How to get get Unique Records based on multiple columns from a table
. But Was blocked by a syntax error.
My use case as below:
and my sql as below:
select demo.*,
row_number() over (partition by id order by creator desc) as rn
from demo
but it tell me:
near "(": syntax error:
I dont know what happend and I do some search such as How to use ROW_NUMBER in sqlite . Unfortunately, I still cant figure out what mistake I make. Anything will be appreciate.
SQLite supports window functions since version 3.25, so the original query should work now.
Use
subquery
instead:As mentioned in the comments, SQLite does not support
row_number()
or other window functions. You can use a correlated subquery:With an index on
demo(id, creator)
this often has better performance even in databases that do supportrow_number()
.