初心者向けMySQL⑦ 特定のデータを検索する

SQL

こんにちは。fsです。
データベースを管理していると、特定のデータを検索をする必要性が出てきます。
大量のデータがある場合、持っている全てのデータを見るのはとても大変だからです。

例えば、顧客情報のデータ管理であれば、

「名前で検索したい」
「生年月日で顧客層を見てみたい」

などのニーズは良くあります。

というわけで今回は、MySQLを使って特定のデータを検索するという作業をやっていきたいと思います。

特定のデータを検索する

それでは早速データを検索していきましょう。
今回は数百件の顧客情報(姓、名、生年月日)があるという前提で進めます。

whereでデータを検索

データの検索にはwhereという構文を使います。

まずselect * fromでテーブル名を選び、whereでカラムを指定します。
今回は佐藤という顧客の情報を検索します。

select * from 顧客 where 姓="佐藤";

実行すると、たくさんの佐藤さんが出てきます。

このようにデータが出てきます

andで絞り込み

whereだけでは、

「まだデータが多すぎる💦」

なんてことも良くあります。
今回はたくさんの佐藤さんがいらっしゃいますので、90年生まれ以降の方に絞り込みたいと思います。

whereの後に姓を指定し、andで絞り込み条件を追加します。
※>=は以降という意味の記述です

select * from 顧客 where 姓="佐藤" and 生年月日>="1990/01/01";

実行すると、ちゃんと絞り込みができています。

90年以降生まれに絞り込まれています

likeであいまい検索

検索したい情報が明確な場合は上記のやり方でも良いですが、記憶があいまいなときもあります。
例えば、

「あのお客さん、木村さんだったっけ?それとも中村さん?」

みたいなケースです。

そんなとき使えるコマンドがlikeです。

今回の場合は、姓をlikeでつなぎ、あいまいな部分を%で記載します。
(◯村さんという形で検索します)

select * from 顧客 where 姓 like "%村";

実行すると、このような検索結果が出てきます。

姓に”村”がつくデータが表示されました

これらを組み合わせると、さらに精度の高い検索ができるようになります。
色々と試してみましょう😌

まとめ

いかがだったでしょうか。
MySQLのコマンドを使い、データの

  • 通常検索
  • 絞り込み検索
  • あいまい検索

を紹介していきました。
いろんなコマンドを組み合わせると、より精度の高いデータ取得が可能になっていきます。

これらの処理もデータベースを扱う上での基礎となりますのでぜひ手を動かしながら慣れていっていただければ幸いです。

今回は以上です。
最後までお読みいただきありがとうございました。

fsも愛用中!UdemyでMySQLを学ぼう!!

この投稿は役に立ちましたか? 役に立った 役に立たなかった 7 人中 7 人がこの 投稿 は役に立ったと言っています。

コメント

海外ブログバナー

にほんブログ村 海外生活ブログへ

海外ブログバナー

にほんブログ村 海外生活ブログへ

シンガポールの古本屋さん

タイトルとURLをコピーしました