why do they play the national anthem before every game in the first place, even though in the large majority of cases all participating teams are American anyway? Except I guess in the NHL where you'd have a large number of international games.
It's a very nice anthem though, among my favourites to listen to, just not an easy one to sing along to. Come to think of it, do you also have the controversies that you see in Europe sometimes with international soccer games where the media analyzes who did and didn't sing along, or are they just not supposed to sing along in the first place?
Patriotism is the short answer. Well, patriotism and tradition now. And now also advertising for the military.