電子書籍の厳選無料作品が豊富!

データベース内の住所のデータなのですが、
以下のような処理を行うことは可能でしょうか?
SQL、プログラム等、やり方は問いません。
経験者の方がいましたら教えて頂けないでしょうか?

1.「丁目」と「番」を全角ハイフンにする。また、「号」を削除する。

2.漢数字をアラビア数字にする。

(例)
東京都港区六本木十丁目二十三番七号

東京都港区六本木10-23-7

A 回答 (3件)

バーコードに必要な文字情報の抜き出し法


http://www.post.japanpost.jp/zipcode/zipmanual/p …

住所B(町域名以降の住所)のデータから、カスタマバーコードとして必要な文字情報を抜き出します。
http://www.post.japanpost.jp/zipcode/zipmanual/p …
    • good
    • 0

データベース内の表記は、必ず○丁目□番△号の


形になっていますか?
○丁目□番地
○丁目□ノ△
○丁目□の△
○○区二番町
3丁目30-8郵便ビル403号
4丁目郵便センター6号館
↑の様なデータがあると単純な文字列変換では済ま
なくなります。
    • good
    • 0
この回答へのお礼

貴重なアドバイスありがとうございました。
細かい点まで教えて頂き参考になりました。
VBAと手作業でなんとか対応できました。

お礼日時:2013/03/12 22:01

元SE、プログラマーで今は総務系事務職でデータのメンテナンスなどもやっています。



データ量がいくらかはわかりませんが、数千件から数万件程度なら力技で目で見ながらメンテナンスするのもありな範囲だと思います。

私(一応SQLはわかる)がやるとしたら

>1.「丁目」と「番」を全角ハイフンにする。また、「号」を削除する。
「丁目」という住所表記は都道府県名とかち合わないのは確実で、市区町村名ともかちあいにくそう?(と私は思う)さらに字とも重なりにくそうなので、私はAccessを使ってデータを加工しますが,
replae関数で「丁目」→「-」を行います。事前にLike"*丁目*"をクエリーで使って変な変換になる箇所がないか確認しておけばよいでしょう。

号については(Access書式ですが)Like "*号"で住所の終わりが"号"で終わるデータを抽出し最後の一文字を削除します。

これに比べると「番」を全角ハイフンにするのほうがめんどうそうですね。
私がやるなら、「番」を含むデータを抽出し、プログラムを作成して前後が数字であるか否かをチェックする感じでしょうか?(前後が数字なら全角ハイフンに置き換える)

いずれにせよ、対象のデータ量次第ではないでしょうか?
作業に数日かけていいなら、SQLの助けを借りながら目で確認していく方法で十分対応できると思います。
    • good
    • 0
この回答へのお礼

貴重なアドバイスありがとうございました。
VBAと手作業でなんとか対応できました。

お礼日時:2013/03/12 22:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A