On 9 Mar 2012, at 4:00pm, John Salerno <johnj...@gmail.com> wrote:

> On Fri, Mar 9, 2012 at 7:29 AM, Simon Slavin <slav...@bigfraud.org> wrote:
> 
>> Sooner or later you're going to want to make a list which is sorted in 
>> artist order.  And you're going to want to list 'The Beatles' (if you have 
>> any taste at all).  But if you list artists in name order they'd come in the 
>> Ts, not the Bs because 'The' is part of the band name.  So having a 
>> "sortOrder" field lets you enter 'The Beatles' as the band name but 
>> 'Beatles, The' in the sortOrder field.  Similarly, 'Elvis Presley' should be 
>> sorted under 'P', not 'E'.  Of course you could enter 'Presley, Elvis' 
>> instead of the name in the order humans would say it, but I consider that a 
>> way of saying "The computer is more important that you so humans must adapt 
>> to the computer way.", which is an attitude I despise.
> 
> Do I have to manually edit the name of the band to insert the
> information in the sortOrder field? Wouldn't that require me to know
> something about the exact wording of the band/artist name? Or is there
> some generic way to do this? Simply switching the first and last name
> wouldn't work, since that would mess up band names that aren't people
> names, etc.

You can work some way towards it in software, by doing things like changing 
"The <anything>" to "<anything>, The" and assuming any name with two words in 
is a person's name (though there are exceptions like 'Pink Floyd'.  But no, to 
get them all right you'd have to have a human look at them.  But you don't have 
to get them all right on first entry:

One great advantage of having three independent tables is that you can set up 
your initial data import to do the conversion from "name" to the "sortOrder" 
poorly, or even not at all (just copy "name" into the "sortOrder") and then if 
someone changes the sortOrder field of an artist later, all your existing data 
about the songs and plays will magically start showing up in the new sort order 
without someone having to go through all the data which has already been 
entered.  This is a great advantage of the 'normalization' we keep going on 
about: just change one piece of data once, and many other things immediately 
reflect the change.

Simon.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to