But would you want to put that code into a sql query? I'd far rather be able to say:
select info.* from info, map
where info.postcode = map.postcode and map.region = 'STM';
wouldn't you? Or would you really prefer to write:
select * from info
where postcode = '7421'
or (postcode >= '80' and postcode <= '803')
or (postcode >= '830' and postcode <= '836')
or (postcode >= '84' and postcode <= '89')
or postcode = '9323';
AND have to edit your source code every time a postcode changes?
Not to mention, the first version is probably going to run faster too.