勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

MySQLで全国の市区町村のデータを入手し、抽出する方法

   2024/01/15  MySQL / MariaDB データベース

都道府県と市区町村が連携したセレクトメニューを作成したかった。具体的には大阪府を選択すると「大阪市○○区」「門真市」等が市区町村側のセレクトメニューとして選択できるようにしたい。連携セレクトメニューに関しては過去記事の方法でおおよそ対応できそうだが、そもそもの市区町村データが無いので用意したかった。

 

データの取得

以下サイトから取得する。今回はCSVの全国版を取得した。

http://jusyo.jp/sql/document.html

 

必要なデータの抽出

取得したデータをMySQLにインポート後、以下で必要なデータを抽出・保存する。

#テーブルのコピー
CREATE TABLE new_ad_address LIKE ad_address;

#新規テーブルに必要データのみ格納
INSERT INTO new_ad_address 
SELECT  * 
FROM ad_address 
GROUP BY city_name 
ORDER BY ken_id;

 - MySQL / MariaDB データベース

  関連記事

MySQLで「doesn't have a default value」エラーの対処
MySQLで「doesn't have a default value」エラーの対処

MySQLでINSERT時に「Field 'カラム名' doesn't have ...

MySQLでオートインクリメントを使用せずにグループ毎に連番を設定する方法
MySQLでオートインクリメントを使用せずにグループ毎に連番を設定する方法

MySQLでオートインクリメントを使用せずにグループ毎で連番を割り振りたかった。 ...

さくらインターネットでCronからmysqldumpすると0バイトのファイルが生成される
さくらインターネットでCronからmysqldumpすると0バイトのファイルが生成される

さくらインターネットのレンタルサーバでmysqldumpした結果をファイルとして ...

MySQLで一連の処理を関数のように実行できるストアドプロシージャの設定と利用方法
MySQLで一連の処理を関数のように実行できるストアドプロシージャの設定と利用方法

MySQL関連のサイトを見ていた際にストアドプロシージャが云々というページがあっ ...

MySQLでIPを整数値としてカラムに格納する
MySQLでIPを整数値としてカラムに格納する

MySQLでIPを整数値としてカラムに格納しているケースがあった。今までIPが必 ...