Vou abordar a parte pequena, mas crucial da questão:
Basicamente, a consulta une duas tabelas. MAS, ambas as tabelas que estão sendo unidas são de fato a mesma tabela - "zips" (em outras palavras, ela une a tabela "zips" a si mesma). Claro, já que o resto da consulta precisa entender quando você está se referindo ao primeira cópia da tabela "zips" e quando for a segunda cópia da tabela "zips", você está fornecendo um alias de tabela a cada cópia - a saber, "a" e "b"'.
Portanto, "b.xxx" significa "coluna xxx dos zips da tabela, da SEGUNDA instância dessa tabela que está sendo unida".