こんにちは。
>住所にふりがなが無いので、しかたないのかもしれませんが...
は、まさにおっしゃる通りです。そもそも漢字は読みが複数ありますし、一般的には文字コード順のソートになります (照合順序 COLLATE)。
JIS X0401 都道府県コードやソート順などをもつ「都道府県テーブル」を用意して、それらのうち任意の列の値を使ってソートをすることで実現することになると思います。
JIS X0402 市町村コードや、郵便局(日本郵便)から公開されている郵便番号住所データなども、このようなときに使われます。
郵便番号住所データには、よみがなの列も含まれているので、ご質問の要件を満たすにはこれの利用が適しているでしょう。郵便番号テーブルに取り込んで住所(漢字)の先頭部分が一致するものをJOINさせて、読み列でソートさせます。
埼玉県の郵便番号住所データ(CSV)例
11101,"331 ","3310058","サイタマケン","サイタマシニシク","イイダ","埼玉県","さいたま市西区","飯田",0,0,0,0,0,0
11101,"331 ","3310068","サイタマケン","サイタマシニシク","イイダシンデン","埼玉県","さいたま市西区","飯田新田",0,0,0,0,0,0
11101,"331 ","3310053","サイタマケン","サイタマシニシク","ウエタヤホン","埼玉県","さいたま市西区","植田谷本",0,0,0,0,0,0
11201,"350 ","3500032","サイタマケン","カワゴエシ","オオセンバ","埼玉県","川越市","大仙波",0,0,0,0,0,0
11201,"35011","3501128","サイタマケン","カワゴエシ","オオセンバシンデン","埼玉県","川越市","大仙波新田",0,0,0,0,0,0
11201,"35011","3501129","サイタマケン","カワゴエシ","オオツカ","埼玉県","川越市","大塚",0,0,1,0,0,0
11201,"35011","3501161","サイタマケン","カワゴエシ","オオツカシンデン","埼玉県","川越市","大塚新田",0,0,0,0,0,0
11207,"368 ","3680026","サイタマケン","チチブシ","アイオイチヨウ","埼玉県","秩父市","相生町",0,0,0,0,0,0
11207,"368 ","3680016","サイタマケン","チチブシ","アボマチ","埼玉県","秩父市","阿保町",0,0,0,0,0,0
11207,"36918","3691804","サイタマケン","チチブシ","アラカワオノバラ","埼玉県","秩父市","荒川小野原",0,0,0,0,0,0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2015/12/10 07:46