アプリケーション開発ポータルサイト
ServerNote.NET
ServerNote.NET厳選キャンペーン・クーポンはこちら!
カテゴリー【MySQL
【MySQL】WHERE条件つきでテーブルをダンプする
POSTED BY
2022-05-05

mysqldumpに-tオプションをつけると、DROP TABLE/CREATE TABLE定義を出力せずINSERT文だけ吐き出してくれる。

さらに、--whereオプションにて、SELECT条件にマッチするレコードだけ取れるので、上記-tと合わせ即SQL文として使えるダンプファイルが作成できる。

まとめると

mysqldump -u <ユーザー名> -p<パスワード> <データベース名> -t <テーブル名> --where "条件文" > output.dmp

のようになる。例として、

ユーザー名:hogeuser
パスワード:hogepass
データベース名:mydb
テーブル名:mytable

として、mytableのname(TEXT)要素において先頭4文字がABCDで始まるレコードを抽出するには、

mysqldump -u hogeuser -phogepass mydb -t mytable --where "name like 'ABCD%'" > output.dmp

などとする。LIKE文はシングルクオテーションで囲わなければいけないが、シェル上で実行するので条件文ごとダブルクオテーションで囲うのがポイント。

【未経験&初心者OK】ハンドメイドチャンネル「ブログライター体験募集」
・「好きな場所で好きな時間に働ける」そんなブログライターになりたい方向けに、 実際にブログライターとし...READ MORE
中国在住日本人に必須のVPNサービス【スイカVPN】
インターネットで閲覧規制の厳しい中国からでも、SNS(Facebook、Twitter、Instagram、LINE等)や動画サイト...READ MORE
フジカラーデジカメプリント1枚12円、ソフト不要でオンライン注文。コンビニ支払いOK。
フジカラープリント専門の写真現像、写真プリントサービスのDPE宅配便|らくらく写真プリントです。 DSCサイ...READ MORE
※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【webmaster/管理人】
自営業プログラマー
ご連絡は以下アドレスまで★

☆ServerNote.NETショッピング↓
ShoppingNote
☆お仲間ブログ↓
一人社長の不動産業務日誌
【キーワード検索】