「その間」を使用する場合、SQL標準またはMySQLに違いはありますか。より正確に言うと、SQL Standard では、次のようにします。
A between 1 and 10
に等しいか:
1 <= A and A <= 10
-- or
1 < A ans 1 < 10
結果はMySQLでも同じですか。
「その間」を使用する場合、SQL標準またはMySQLに違いはありますか。より正確に言うと、SQL Standard では、次のようにします。
A between 1 and 10
に等しいか:
1 <= A and A <= 10
-- or
1 < A ans 1 < 10
結果はMySQLでも同じですか。
expr BETWEEN min AND max
expr が min 以上で expr が max 以下の場合、BETWEEN は 1 を返し、それ以外の場合は 0 を返します。これは、すべての引数が同じタイプの。それ以外の場合は、セクション12.2「式の評価における型変換」で説明されている規則に従って型変換が行われますが、3 つの引数すべてに適用されます。
1 と 10 の間の A は1 <= A および A <= 10に等しくなることが明確に述べられています。
MySQL では
「employee_tbl」テーブルに従業員名、daily_typing_pages 列が含まれているとします。
+------+------+------------+--------------------+
| 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 |
+------+------+------------+--------------------+
このテーブルで次のクエリを実行すると:
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 |
+------+------+------------+--------------------+
つまり、その間は包括的として機能します。170 と 300 を含むデータが得られます。
MSSQL で
「Products」テーブルに、製品名、価格などの製品データを含めます。
ProductID ProductName Price
1 Chais 18
2 Chang 19
3 Aniseed Syrup 10
5 Chef Anton's Gumbo Mix 21.35
4 Chef Anton's Cajun Seasoning 22
このテーブルで次のクエリを実行すると:
SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20;
クエリの結果、before 句で指定された価格を含む次のデータが返されます。
ProductID ProductName Price
1 Chais 18
2 Chang 19
3 Aniseed Syrup 10
したがって、MSSQL では、MySQL のように包括的に動作します。
これを見ることができます:http://www.tutorialspoint.com/mysql/mysql-between-clause.htm
この