User-defined Order in SQL (2018)
begriffs.com
begriffs.com
I mentioned this in another comment, but Learn to Rank allows a customized sorting order that is specified by an administrator. Where you see this is in systems where you need a really fast evaluation (ms) and computation doesn't work well.
For example, in an e-commerce system you might want search results that reflect what your users are likely to buy. For a few items you might be able to do something computationally with SQL, but at scale there are lots of features and signals and noise and it quickly moves past algebra.
https://en.wikipedia.org/wiki/Learning_to_rank#:~:text=Learn....
It would be interesting to see some things like Learn To Rank or semantic reranking become a part of SQL. These have real impacts on accuracy with generative AI.
Not sure how practical this is.
update todos set pos = pos+1 where pos >= 3 ORDER BY pos DESC
Am I missing something?The reason the author gives for rejecting your proposal is they have added a uniqueness constraint which makes the update awkward but you can indeed work around that in a variety of ways or just drop the uniqueness constraint altogether.
[1] Although update doesn't have an "order by" clause[2] but I'm assuming you mean 'update' and then subsequently 'select' with the order by. I think if you actually want an update to proceed sequentially in some order you have to use a cursor.
[2] Author is using postgres so this would be the relevant doc https://www.postgresql.org/docs/current/sql-update.html
Imagine a situation when multiple clients keep copies of todos and rely on optimistic locking for updates.
This is a cool little problem brilliantly solved.
These rotate between different agents and supervisors. The ownership is just an attribute intended for humans.
OTOH, rebalancing the order at night is not a problem.