郵便番号などのマスタと、手入力された郵便番号のリストを比較して、マスタに存在しない値をリストアップしてくれるWebアプリを作ってみた。
CSVやエクセルなどで、親子関係のあるテーブルデータをもらった時に、制約を付け忘れたのか親マスタに存在しない参照キー(郵便番号なら123-4567みたいな奴)があったりする。
エクセルマクロやSQLでマスタ存在チェックしてもいいだけど、もっと手軽に出来ないかな?と思ってWebアプリを探したけど見つからなかったので自分で作ってみた。
単純なfor-for文で作ったので、あんまりレコード数が多すぎるとタイムアウトするかも?
試しに全国の郵便番号マスタ(約12万4千件)に対して、7ケタ乱数を1000件生成してマスタ存在チェックしたら10秒近くかかった。
まあ、大量のレコード同士を比較するなら、素直にSQL使えばいいので、簡易チェックくらいの気持ちで~。
1 2 3 4 5 6 7 8 |
<?php // 郵便番号7ケタ乱数を1000件生成 for ($i = 0 ; $i < 1000 ; $i++){ $pw = mt_rand(0,9999999); $pw2 = sprintf("%07d",$pw); echo $pw2 . "<br />"; } ?> |