MySQLのBETWEEN演算子とIN演算子

BETWEEN演算子を使ってみる

MySQLではBETWEEN演算子というものがあり、WHERE句で使うことができます。
以下のようにすると、weigt列が60以上、かつ、70以下のメンバーを抽出します。

mysql> SELECT * FROM member WHERE weight BETWEEN 60 AND 70;
+----+--------+------+--------+---------+
| id | name   | age  | weight | address |
+----+--------+------+--------+---------+
|  4 | miura  |   31 |     67 | 埼玉  |
|  5 | kimura |   27 |     62 | 茨城  |
|  6 | takai  |   25 |     63 | 千葉  |
+----+--------+------+--------+---------+
3 rows in set (0.00 sec)

IN演算子を使ってみる

MySQLではIN演算子というものもあり、WHERE句で使うことができます。
address列が’東京’、または、’茨城’のメンバーを抽出する。

mysql> SELECT * FROM member WHERE address IN ('東京', '茨城');
+----+----------+------+--------+---------+
| id | name     | age  | weight | address |
+----+----------+------+--------+---------+
|  1 | tanaka   |   30 |     57 | 東京  |
|  2 | suzuki   |   32 |     77 | 東京  |
|  5 | kimura   |   27 |     62 | 茨城  |
|  8 | murakami |   35 |     42 | 茨城  |
|  9 | kikuchi  |   32 |     41 | 茨城  |
| 10 | suzuki   |   31 |     51 | 茨城  |
+----+----------+------+--------+---------+
6 rows in set (0.00 sec)

これは、"OR"句を使っても実現できます。

mysql> SELECT * FROM member WHERE address='東京' OR address='茨城';
+----+----------+------+--------+---------+
| id | name     | age  | weight | address |
+----+----------+------+--------+---------+
|  1 | tanaka   |   30 |     57 | 東京  |
|  2 | suzuki   |   32 |     77 | 東京  |
|  5 | kimura   |   27 |     62 | 茨城  |
|  8 | murakami |   35 |     42 | 茨城  |
|  9 | kikuchi  |   32 |     41 | 茨城  |
| 10 | suzuki   |   31 |     51 | 茨城  |
+----+----------+------+--------+---------+
6 rows in set (0.00 sec)

コメントを残す

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

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>