如何在 MySQL 表中选择特定范围的值?

mysqlmysqli database更新于 2023/11/26 20:09:00

为了在 MySQL 表中选择特定范围的值,您可以使用 WHERE 子句。让我们首先创建一个表:

mysql> create table DemoTable
(
   CustomerId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   CustomerName varchar(200),
   CustomerAge int,
   isRegularCustomer bool
);
Query OK, 0 rows affected (0.57 sec)

下面是使用 insert 命令在表中插入一些记录的查询:

mysql> insert into DemoTable(CustomerName,CustomerAge,isRegularCustomer)values('Chris',24,true);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(CustomerName,CustomerAge,isRegularCustomer)values('Robert',26,false);
Query OK, 1 row affected (0.22 sec)
mysql> insert into DemoTable(CustomerName,CustomerAge,isRegularCustomer)values('Mike',27,false);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(CustomerName,CustomerAge,isRegularCustomer)values('Larry',22,true);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable(CustomerName,CustomerAge,isRegularCustomer)values('Sam',30,true);
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable(CustomerName,CustomerAge,isRegularCustomer)values('Carol',26,true);
Query OK, 1 row affected (0.16 sec)

以下是使用 select 命令显示表中记录的查询:

mysql> select *from DemoTable;

这将产生以下输出:

+------------+--------------+-------------+-------------------+
| CustomerId | CustomerName | CustomerAge | isRegularCustomer |
+------------+--------------+-------------+-------------------+
|          1 | Chris        |          24 |                 1 |
|          2 | Robert       |          26 |                 0 |
|          3 | Mike         |          27 |                 0 |
|          4 | Larry        |          22 |                 1 |
|          5 | Sam          |          30 |                 1 |
|          6 | Carol        |          26 |                 1 |
+------------+--------------+-------------+-------------------+
6 rows in set (0.00 sec)

以下是在 MySQL 表中选择特定范围值的查询。在这里,我们选择年龄大于等于 24 岁且小于等于 27 岁的客户记录。此外,客户应该是常客,即在"isRegularCustomer"列下有 1 个值:

mysql> select CustomerId,CustomerName,CustomerAge,isRegularCustomer from DemoTable
where isRegularCustomer=true AND CustomerAge >=24 AND CustomerAge <= 27;

这将产生以下输出 −

+------------+--------------+-------------+-------------------+
| CustomerId | CustomerName | CustomerAge | isRegularCustomer |
+------------+--------------+-------------+-------------------+
|          1 | Chris        |          24 |                 1 |
|          6 | Carol        |          26 |                 1 |
+------------+--------------+-------------+-------------------+
2 rows in set (0.00 sec)

相关文章