skillup

技術ブログ

Database

データベースによるテストデータ作成

投稿日:2016年8月30日 更新日:

テスト環境を作る際に、テストデータを作るのが面倒・・・なんかライブラリでもないかな・・と思っていたんですが、MySQLでいろいろと簡単にできます。

数字

rand()は通常のプログラムと同じで0~1での数字を任意に出力します。当然100のところを好きな数字にしてあげれば1~その数までとなります。

任意の文字

ランダムな半角英数字を作れます。上記の例は1~10まで。パスワードと同じ原理かと思います。concatを使えばさらに任意の文字と組み合わせることができます。

日付

date_addは下記リンクを参考に。

DATE_ADD(date,INTERVAL expr unit)

一番最後の構文は説明が必要でしょう。

contact_wsは単純な連結です。

addtimeは任意の日付の加算を行うことができます。加算式がやや複雑です。

w3resource MySQL ADDTIME() function

私が説明するよりこのリンクがはるかにわかりやすい・・英語ですが、式だけでわかると思います。

sec_to_time

数字をHH:MM:SSで表記します。

MySQL @Wiki 実用リファレンス SEC_TO_TIME

date_formatはその名のとおり通常のフォーマットです。

日付に関しては結構いろいろなことができるのでもっと知っておけばよかったです・・・

参考

テストのダミーデータ作成

ちょうど去年書きましたが、めちゃくちゃ役に立ちました。リンクが(爆)

MySQLで簡単にランダムなテストデータを作成する方法

この記事自体ここのパクリに近いです(爆)。

-Database
-,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

インデックスについて(SQLServer)

DBのインデックスについて、今までぼんやりと検索条件の効率化についてはしっていたのですが、もう少し掘り下げて理解する必要があるなと思い、メモります。 SQLServerのインデックスについてすごくまと …

no image

データベースのインデックスについて

今回はデータベースのインデックスに関して。 検索条件を早くする場合、何よりも速度が速くなるのはインデックスを張ることでしょう。 インデックスを張ることは単語を索引順に並べることですので、劇的に速度が向 …

no image

エンティティの抽出と主キー決定

主に設計に関することのメモ。 Contents1 業務フロー分析2 エンティティの抽出3 エンティティの関連付け4 主キーの抽出を行う4.1 主キーの特徴4.2 サロゲートキーのメリット4.3 サロゲ …

no image

外部結合 応用編

本日は「達人に学ぶSQL徹底指南書」の外部結合の応用編です。 下記のような3つのテーブルがあるとします。例によってここを使わしてもらってます。 tblsex sex_cd | sex —& …

no image

ユニークキーの設定

MySQLでのユニークキーの設定に関して。 ユニークキーの設定は下記の通り。

ユニークキーを作成した後に確認するのは下記コマンドで。 …

アーカイブ