Mysql-between-clause

提供:Dev Guides
移動先:案内検索

MySQL-節間

*BETWEEN* 句を使用して、「より大きいおよび等しい」条件の組み合わせを置き換えることができます。
*BETWEEN* 句を理解するために、次のレコードを持っている *employee_tbl* テーブルを考慮してください-
mysql> SELECT * FROM employee_tbl;
+------+------+------------+--------------------+
|  id  | name | work_date  | daily_typing_pages |
+------+------+------------+--------------------+
|   1  | John | 2007-01-24 |        250         |
|   2  | Ram  | 2007-05-27 |        220         |
|   3  | Jack | 2007-05-06 |        170         |
|   3  | Jack | 2007-04-06 |        100         |
|   4  | Jill | 2007-04-06 |        220         |
|   5  | Zara | 2007-06-06 |        300         |
|   5  | Zara | 2007-02-06 |        350         |
+------+------+------------+--------------------+
7 rows in set (0.00 sec)

ここで、上記のテーブルに基づいて、daily_typing_pagesが170以上で300以下の条件のレコードをフェッチするとします。 これは、次のように*> = および *⇐ 条件を使用して行うことができます-

mysql>SELECT * FROM employee_tbl
   ->WHERE daily_typing_pages >= 170 AND
   ->daily_typing_pages <= 300;
+------+------+------------+--------------------+
|  id  | name | work_date  | daily_typing_pages |
+------+------+------------+--------------------+
|   1  | John | 2007-01-24 |        250         |
|   2  | Ram  | 2007-05-27 |        220         |
|   3  | Jack | 2007-05-06 |        170         |
|   4  | Jill | 2007-04-06 |        220         |
|   5  | Zara | 2007-06-06 |        300         |
+------+------+------------+--------------------+
5 rows in set (0.03 sec)

次のように BETWEEN 句を使用して同じことが達成できます-

mysql> SELECT * FROM employee_tbl
   -> WHERE daily_typing_pages BETWEEN 170 AND 300;
+------+------+------------+--------------------+
|  id  | name | work_date  | daily_typing_pages |
+------+------+------------+--------------------+
|   1  | John | 2007-01-24 |        250         |
|   2  | Ram  | 2007-05-27 |        220         |
|   3  | Jack | 2007-05-06 |        170         |
|   4  | Jill | 2007-04-06 |        220         |
|   5  | Zara | 2007-06-06 |        300         |
+------+------+------------+--------------------+
5 rows in set (0.03 sec)