MySQLで全国の市区町村のデータを入手し、抽出する方法
2024/01/15
都道府県と市区町村が連携したセレクトメニューを作成したかった。具体的には大阪府を選択すると「大阪市○○区」「門真市」等が市区町村側のセレクトメニューとして選択できるようにしたい。連携セレクトメニューに関しては過去記事の方法でおおよそ対応できそうだが、そもそもの市区町村データが無いので用意したかった。
データの取得
以下サイトから取得する。今回は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;
#テーブルのコピー
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;
#テーブルのコピー 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で正規化できない時はシリアライズ使う
アンケートか何かに機能追加している際、配列を カンマ区切りで結合して文字列でDB ...
-
-
MySQLでユーザー作成時にエラーが発生
SSHからrootアカウントでMySQLにログインし、ユーザーを作成しようとする ...
-
-
エックスサーバーでMySQLのサイズに注意
エックスサーバーで自動更新のログをMySQLに保存するようなシステムを動かしてい ...
-
-
MySQLで同一サーバーの異なるDB内のテーブルをJOINする
同一のMySQLサーバーでdb1データベースのtable1テーブルと、db2デー ...
-
-
MySQLにて直近のクエリで発行されたAUTO_INCREMENTの値を取得する方法
やりたかったことは「MySQLで新規登録(INSERT)なら、登録時のAUTO_ ...