|
|
@@ -65,9 +65,12 @@ func GetNextSongId(db *sqlx.DB, prevSongId int64) (nextSongId int64, err error)
|
|
|
and prev.id_next is null
|
|
|
and next_track_number.artist = prev.artist
|
|
|
and next_track_number.album = prev.album
|
|
|
- and next_track_number.track_number > prev.track_number
|
|
|
+ and (
|
|
|
+ (prev.track_number > 0 and next_track_number.track_number > prev.track_number)
|
|
|
+ or (prev.track_number = 0 and next_track_number.id > $1)
|
|
|
+ )
|
|
|
|
|
|
- order by next_track_number.track_number
|
|
|
+ order by next_track_number.track_number, next_track_number.id
|
|
|
limit 1
|
|
|
|
|
|
) prev
|