A foobar2000 interface using columns UI:
All fields are searchable. I usually rename the individual artist fields externally tagged at ripping time (freedb, MusicBrainz, etc.) to be "ensemble name:director_last_name" or just the soloist artist's name. The date is one that I usually change to the original date of the recording release (not the disc release date).
Playlists (custom lists) are in the left pane, which override all the fields on the right.
The panes to the right include: genre, artist name, album name, and album artwork.
The next columns found below the major five panes are:
genre
artist name
album name
date of album
length in minutes:seconds (and playback time position)
number of channels (stereo, 3, 4, 5, etc.)
track dynamic range (in dB crest factor, results of the DR Database TT Plugin)
album average dynamic range (the album ave. dB crest factor results of the DR Database TT Plugin)
track ReplayGain
album ReplayGain
disc number (physical--in box collection)
codec (FLAC, DSD64, etc.)
date/time of last track modification
number of times played (by this version of foobar2000 on this computer)
date last played
date that the track was added to database
All of these fields will instantly sort the entire database. The search field on the top towards the right-hand side works for all fields in the database. All you need do is to start typing and all the database records are instantly sorted in real time. "Bernstein" typed there will get you all records with "Bernstein" in any field, instantly.
Since I
demaster almost all of my incoming albums (in all formats except DSD), I need to keep track of the last time that I edited the track using Audacity, etc.
The only format that cannot be faithfully played back using foobar2000 is DSD. All PC hardware internally converts DSD files to PCM before sending them to the external preamp/DAC. It takes a disc player with HDMI output that can handle DSD over HDMI to send DSD-native bit streams to the preamp/DACs.
What more do you need?
Chris