【計算列追加】PythonでMySQLテーブルに計算結果の列を追加する方法【Docker & Jupyterlab環境】
はじめに 全国地方公共団体コード 、というものがある。 総務省が提供している。 元来、 都道府県コード (2桁数字)と 市区町村コード (3桁数字)があり、JIS X 0401とJIS X 0402として制定されてもいる。 全国地方公共団体コードは この2つのコードを合わせた、5桁の数字 である。 しかし、総務省提供の全国地方公共団体コードでは、なぜか 6桁 である。 他の、例えば郵便番号コードでは、全国地方公共団体コードが5桁であるのに、である。 実は、6桁の全国地方公共団体コードは、5桁に付随して 下1桁に検査数字(チェックデジット)が付加 されているのである。 今回は、全国地方公共団体コードの桁数を5桁に合わせるために、 6桁の全国地方公共団体コードを5桁にし、新たな項目を作成してそこに5桁コードを記述する方法 を紹介する。 コードの解説 import mysql.connector db=mysql.connector.connect(host="host.docker.internal", user="root", password="root") cursor = db.cursor() # データベースを選択 cursor.execute("USE default_db;") db.commit() cursor.execute("ALTER TABLE JLGcode_table ADD JLGcode_5 INT(5) UNSIGNED ZEROFILL GENERATED ALWAYS AS (SUBSTRING(全国地方公共団体コード, 1, 5)) STORED;") db.commit() 1行目〜7行目 は、をご覧あれ。 8行目 : commit() は 「トランザクションをコミットして、その変更を永続的なものに」する処理を行う 。大抵は execute()の直後に置いてexecute()で実行した司令を完了させる 。詳細は 参考サイト へ。→ 【2022.2.17追記】commit()の必要な時、不要な時 も見よ。も見よ。 【2022.2.17追記】commit()の必要な時、不要な時|【まとめ】Pyth...