MySQLでデータを取得する方法について書いています。
データベースのテーブルからデータを取得するには、テーブルに対してSELECT文を使うと良いです。
MySQLのバージョン8.0.32で、動作を検証しています。
テーブルからデータを取得する
MySQLでテーブルからデータを取得するにはSELECT
文を使いましょう。
データベースをUSE
で選択した後に、下記のようにSQLを実行します。
SELECT * FROM users;
SELECT
の後のアスタリスク(*
)は、全てのカラムを取得することを明示的に書いています。
FROM
の後にデータを取得したいテーブル名を書きます。
今回はusers
テーブルから、全てのカラムのデータを取得するという意味になります。
users
テーブルは、こちらの記事で作成したテーブルで、「id / name / age / birthday
」という4つのカラムを持っています。
users
テーブルには3件のデータを格納済みです。
実行すると、下記のように全てのカラムのデータが取得できます。
id | name | age | birthday |
---|---|---|---|
1 | yasuaki | 34 | 1989-02-06 |
2 | taro | 20 | 2003-01-01 |
3 | hanako | 22 | 2001-01-01 |
全てのカラムのデータが取得できました。
全データの3件が取得できました。
カラムを指定してデータを取得する
SELECT
を使うときに、カラムを指定することで、指定したカラムのデータのみを取得することができます。
例えば、このように指定できます。
SELECT name, age FROM users;
こうすると、下記のように指定したカラムのみのデータが表示されました。
name | age |
---|---|
yasuaki | 34 |
taro | 20 |
hanako | 22 |
WHEREで条件をつけてデータを絞る
SELECT
文を使うときに、WHERE
を入れることで検索条件をつけることができます。
例えば、下記のようにWHERE
で取得対象を絞ることが可能です。
SELECT * FROM users WHERE 30 <= age;
users
テーブルからデータを取得しています。
WHERE
の後に「30 <= age
」と条件を指定しています。
年齢(age
)が30歳以上のレコードを取得しています。
実行すると、下記のように30歳以上のユーザーデータが取得できました。
id | name | age | birthday |
---|---|---|---|
1 | yasuaki | 34 | 1989-02-06 |
WHEREで使える比較演算子
また、下記のように他の比較演算子を使用して、条件をつけてデータを取得することができます。
比較演算子 | 例 | 説明 |
---|---|---|
<= (以上) | 30 <= age | 30歳以上のデータを対象にする |
< (超える) | 30 < age | 30歳を超えるデータを対象にする |
>= (以下) | 30 >= age | 30歳以下のデータを対象にする |
> (未満) | 30 > age | 30歳未満のデータを対象にする |
= (同じ) | 30 = age | 30歳のデータを対象にする |
!= (以外) | 30 != age | 30歳以外のデータを対象にする |
<> (以外) | 30 <> age | 30歳以外のデータを対象にする |
COUNTでデータ件数を取得する
SELECT
と一緒にCOUNT
を使うことで、データの件数を取得することができます。
例えば、下記のように使うことができます。
SELECT COUNT(*) FROM users;
このようにすると、全件の件数が取得できます。
結果は、下記のようになります。
+----------+
| COUNT(*) |
+----------+
| 3 |
+----------+
COUNTで条件(WHERE)をつけて件数を取得する
COUNT
を使ったときにもWHERE
で条件をつけることができます。
SELECT COUNT(*) FROM users WHERE age = 20;
このように使うと、年齢(age
)が20歳のデータのみを取得することができます。
全件で3件ありますが、20歳のユーザーデータは1件です。
結果、下記のように表示されます。
+----------+
| COUNT(*) |
+----------+
| 1 |
+----------+
MySQLでデータを取得する方法まとめ
今回はMySQLでデータを取得する方法について書きました。
記事の内容をまとめると、下記のようになります。
・「`SELECT カラム1 FROM テーブル名`」と取得するカラム(列)を絞ることができた。
・`WHERE`を使うことで、条件をつけて取得されるデータ件数を絞ることができた。
・`COUNT`を使うことで、レコードの件数をカウントできた。
コメント