INDEX on a table where I'm only filtering on a row_number()
If we can declare location, yearnum, and weeknum as NOT NULL, you can create a composite index on location, yearnum, weeknum that can be used instead of doing the full table scan.  Here is a sqlfiddle showing that approach.  Note that I applied a hint to force the index to be used since there isn't enough data in the example for a full scan of the index to be less expensive than a full scan of the table.  The index full scan path would probably be more efficient in the scaled up example assuming each location has data for many more than the past 26 weeks.  That's probably not going to be an order of magnitude improvement, though, unless the table is substantially larger than the index.