• I'm with HansVE and the others on the TinyInt split of the address. You can index those columns on any table that includes them and then join each of the four pieces together very efficiently. You can optionally store the address as a varchar as well if necessary. The cool thing about this is that you can easily search the addresses within just 1 of the four parts (or any combo thereof). If you are worried about space over functionality and low TCO these days, pursue an archive/purging option.

    BTW, very cool example of bit shifting.

    J Pratt