<HOME  <お願い事項   <Access2002 TOP   <Access2000 TOP   <サイト内検索
 Access97データベース工作室>郵便番号の検索
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15



わたくし、しばらく[郵便テーブル]を眺めていて、発見いたしました。

[市区番号]と呼んでいたあのフィールドの値、どうやら法則があるようです。

01101

先頭の2桁が、どうやら都道府県をあらわしているようです。
青森県になるとここが02になってるし、どうもそういう法則が存在しているように見えます。これは使えますぞ!

[市区町村]から、左2桁だけ取り出して、新しい[都道府県コード]を作ってしまいましょう。できますとも。
簡単ですよ。こういうこともあろうかと、テキスト型でインポートしてきたんです。数字じゃなくて文字扱いなら桁ごとの処理も楽ですもんね。

左から2桁、ってことになるんで、Left関数というやつを使います。そのまんまですよね。

Left(どっから , 何桁)

っちゅー感じですね。大文字小文字はどっちでもいいですが、半角全角は意識して入力してくださいね。
この場合は[市区番号]から2桁とってきますから、

Left([市区番号] , 2)

ですね。商品コードとか伝票コードって、桁ごとに意味があるやつ結構あるじゃないですか。
99-0101なんていう番号だと、先頭の2桁は製造年をあらわしてる、とかね。なので、コードとか番号って、テキスト型で作ることが多いんですかね。

で、無理矢理この式を空いてるグリッドに入力します。え?左端に持っていきたい?
番号が右端なのは気持ち悪い??
えー、じゃあ、都道府県カナの左側のところあたりをめがけて、上段のフィールドリストから[市区番号]をドラッグしてみてください。
多分うまいこと、[市区番号][都道府県カナ][都道府県]って並びになると思いますので、[市区番号]のとこを書き換えてやればオッケーでしょう。

勝手に式1:って付きますが、気にしない気にしない。ではテスト。

ブラボー!!

で、この式1の順番に並ぶよう、昇順の設定をしておけば完璧。
いついかなる時も、まずはこの番号順に都道府県が並んでくれて、いい感じじゃないですか。

しかもカナのフィールドも持ってるので、やろうと思えばアイウエオ順もいけるということで・・・。


式1:っていうのは、クエリーが買って煮付ける、いや、勝手につけるフィールド名のことです。
クエリーはこうやって、基にしているテーブルのフィールド意外にも、式を入力したり関数を使ったりできるんですけど、そういう場合はなんか仮のフィールド名がないと困るみたいなんですね。で、式1って自分で名乗ってるんです。

そんな名前じゃわけわからんという場合は、式1のところを他の単語に書き換えましょう。
半角の:は、削除しちゃだめですよ。
式とフィールド名の区切り記号で、決められてますからね。

都道府県番号 : Left( [都道府県番号], 2 )

これでオッケー。


このくえりーになまえをつけて保存し、テーブルの変わりに利用するっていう手もあります。
クエリーは実データは持ちませんけれど、テーブルと同じようにフォームのレコードソースにしたり、レポートのレコードソースにしたり、コンボボックスの中身にしたりできますから、このままでも使い道はいろいろあります。

でも今回は、テーブルを作りましょうね。いいからいいから。何ごとも挑戦です。

このクエリーの種類を、テーブル作成クエリーに変更します。
ツールバーに「クエリーの種類」っていうのがありますよね。

と、作るテーブルの名前を入力します。

これでオッケー。
じゃ、実行しましょう。この手のアクションクエリーは、実行するためには手っ取り早くツールバーの赤いビックリマークボタンをクリックします。

じわじわじわーっとクエリーが実行され、140537件のレコードがきゅーっとまとまって47件になります。

このメッセージが出たら、作業はほぼ終了。でも油断して[いいえ]をクリックしてはいけませんよ。
[はい]
の方をしっかりと意志を持ってクリックしましょう。

[都道府県テーブル]、できました?

さて、このクエリーですけど、別にとっておいてもしょうがない気がするんですけどー・・・どうします?とっときます?
もう使うこともない一回こっきりのクエリーなんで、保存しないでこのまま終わっちゃってもいいと思います。
もったいない!ということでしたら、都クエリーとかなんかそんな名前つけて保存しときましょう。
でも、うっかりこのクエリー開いちゃったりしないようにね。あくまで捨てるのもったいないから取っておく、っていうレベルで・・・。


じゃ、勢いに乗って[市区町村テーブル]も作りましょう。やっぱり基は[郵便テーブル]ですね。

で、とりあえず必要なフィールドを全部選んで、「固有の値」のプロパティを「はい」に設定します。

実行してみると・・・。

んー・・・なんかところどころ歯抜けになってますねぇ・・・。
これもやっぱり事業所テーブルを追加したことで、かな。

追加しなきゃよかったかなー・・・。うーん・・・。
いまさら考えてもしょうがないですよね。

それと、この三つのフィールドだけだと、さっき作った都道府県テーブルとのつながり、持ちにくいですよね。
市区番号があればなんとか拾えないでもないですけど、今回はこのテーブルにも都道府県番号、作っておきますかね。



じゃ、その辺を解決すべく、再度デザイン画面です。
まず、[市区番号]から都道府県番号を作る式、あれを追加しましょう。

こんなかんじですかね。いかがでしょう。

いけてますか?
これで[市区町村テーブル]みたいな名前でテーブルを作れば、うまいこと行きそうですよね。


勢いついでに、[地区テーブル]を作りますか。このテーブルに、郵便番号が格納されるわけですね。

上の並び方でテーブルを作れば、そのとおりに左からフィールドが並びます。並び方もいろいろ工夫してもよいかもしれないですね。

できたー。みなさんオッケーでしょうか。ふいー。


さて、テーブルを3つに分けることができました。こんな操作も、いつかどっかできっとお役に立つんじゃないかなーと思います。

3つテーブルできたら、基にした[郵便テーブル]、いらないんじゃないかと思うんですけど、いかがでしょう。いります?

私は削除しちゃいますね。郵便テーブルクリックしてから、Deleteキーで削除できちゃいます。