My idea is to join a table in which there is one field βTimeβ (which contains integers 1..MAX, you can build this table on the fly) using the song table, where the corresponding SongID for each βTimeβ represents a song with bps closest to f (time). f is a function representing a curve. Then you can order the result in time and get a curve.
This method does not concern duplicates, and I do not know whether it is easy to implement it in SQL (I am not an SQL expert).
source
share