SQLコマンドの基礎的な知識、技術について学習しています。
今回は、検索条件に指定するLIKE句についてまとめておきます。
また、そのほかによく使用するコマンドについてもメモとして記述しておきます。
特定のキーワードを条件にする LIKE
SELECT *
FROM member
WHERE name LIKE '%田%';
ワイルドカード文字
- ワイルドカード文字とは、whereなどの条件検索において、あいまい検索を指示する記号のことです。
% 0文字以上の任意の文字列
_ 任意の1文字
二つのパーセント% %
で囲んだ場合、その文字がどこかに含まれていればOKです。
'%田%' => 山田⭕️ , 田中⭕️
アンダーバーを先にして、後にパーセントをつけた_ %
の場合、何かしらの1文字が最初についた田
を検索条件にします。
'_田%' => 山田⭕️ , 田中❌(田が先にきているので、検索条件には当てはまらない)
LIKEの逆の使い方 NOT LIKE
SELECT *
FROM member
WHERE name NOT LIKE '%田%';
# 取得結果
+------+--------+
| id | name |
+------+--------+
| 3 | 渡部 |
+------+--------+
| 5 | 佐藤 |
+------+--------+
| 7 | 藤井 |
+------+--------+
| 10 | 斉藤 |
+------+--------+
このようにNOT LIKE
を使用すると、田
のつく名前のメンバーを除外して検索結果を取得します。
その他、よく使うSQLコマンド
その他、よく使うSQLコマンドについて記載しておきます。
指定した数だけ取得する LIMIT
SELECT *
FROM songs
WHERE type = 'hip_hop'
LIMIT 3;
条件で空白を除外する IS NOT NULL
SELECT *
FROM songs
WHERE release_year is not null;
参考サイト