Access学習メモ 7-19. SQL基礎学習⑲

Access学習メモ 7-19. SQL基礎学習⑲

コンテンツ
学び
総務省から先月、発表された「ふるさと納税に関する現況調査結果」
(令和7年度)

自治体ごとの納税受入額や、住民税控除額が公表されている。
組み合わせて都道府県別の収支表作りなど、何かの役に立つかもしれない。

総務省の公開資料をもとにAccessでテーブルを作成してみたが、
現在の構成だと、フィールド名を統一できていない。

自治体テーブル:県・府・都 表記なし
受入額テーブル:県・府・都 表記あり
控除額テーブル:県・府・都 表記あり
となっていて、このままではデータをリレーション(結合)できない。

そこで、Replace関数を用いて「ちび」を消去したときと同じ要領で、
受入額および控除額テーブル上の各自治体名から
「県」「府」「都」を省き
自治体マスタに表示を合わせることを思いついた。

【ふるさと納税受入額テーブルの自治体名を変換】
SELECT 
    Replace(Replace(Replace([都道府県], "県", ""), "府", ""), "都", "") 
  AS 都道府県変換,
    *
FROM 
    受入額;

【住民税控除額テーブルの自治体名を変換】
SELECT 
    Replace(Replace(Replace([都道府県], "県", ""), "府", ""), "都", "") 
    AS 都道府県変換,
    *
FROM 
    控除額;

ところが...
京都府のフィールド名が申し訳ないことになってしまいました。

「県」「府」「都」を空白化する命令を加えたことで、
京都府のフィールドには「京」しか残らない結果を招いたのだ。
受入額ランキング.png

控除額ランキング.png

「県」「府」は一律、空白化してよいが「都」は残しておく必要がある。
東京都は「東京」と置き換えれば問題なし。

【ふるさと納税受入額テーブル用】
SELECT Replace(
        Replace(
            Replace([都道府県],"東京都","東京"),
        "県",""),
    "府","") 
 AS 都道府県変換, *
FROM 受入額;
【正】受入額ランキング.png

【住民税控除額テーブル用】
SELECT Replace(
        Replace(
            Replace([都道府県],"東京都","東京"),
        "県",""),
    "府","") 
 AS 都道府県変換, *
FROM 控除額;
【正】控除額ランキング.png

無事、京都が表示されました。
よかったよかった。

あとは各テーブルに自治体マスタのIDを反映させるなど
データ一元化の準備が必要。
「受入額」「控除額」のテーブル、実は各々ランキング表示となっており
自治体の並びがマスタテーブルの都道府県順ではないことから
下地作りには少しコツが必要かも知れない。
次回がんばろ。


サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す