PostgreSQL Between Condition PostgreSQL NOT IN Condition PostgreSQL Exists Condition PostgreSQL Between Condition 在本节中,我们将了解PostgreSQL 之间的工作条件,它与 WHERE 子句一起使用,从两个定义的Between Condition的表中选择数据。我们还将看到具有数字和日期值的 between 运算符和具有Not 运算符的between 运算符的示例。 PostgreSQL Between的条件介绍 的状态之间的PostgreSQL用于定义如何从一个特定的范围内的表达式检索值。换句话说,我们可以说“介于”条件用于将一个值与一系列值进行匹配。 该Between Condition的PostgreSQL也被称为PostgreSQL的运营商之间。 Between Condition的 PostgreSQL 语法 在PostgreSQL 中,条件Between可以与SELECT、INSERT、UPDATE和DELETE命令一起使用。 expression BETWEEN value1 AND value2; OR expression BETWEEN low AND high; 该表达式返回真如果该值大于或等于(> =),以数值1或低值和小于或等于(<=)到值2或高值; 否则,它返回false。 我们还可以使用大于或等于 (>=)或小于或等于 (<=)运算符来重写between 运算符,如下面的语法所示: expression >= value1 and value <= value2 假设我们要找到超出范围的值。在这种情况下,我们可以将NOT 运算符与BETWEEN 条件连接起来,如下面的语法所示: Expression NOT BETWEEN low AND high; 下面的语法等效于上面的语法,它使用 NOT 和 BETWEEN 运算符: Expression < low OR value > high 在上面的语法中,我们使用了以下参数: 范围 描述 Expression 它用于定义列或字段。 value1 and value2 这些值定义了一个与表达式进行比较的包含范围。 PostgreSQL BETWEEN 条件示例 让我们看不同的例子来理解PostgreSQL 之间的条件是如何工作的: Between Condition的 PostgreSQL 示例:使用数值 在下面的示例中,我们将展示如何对数值使用 BETWEEN 条件。 为此,我们从Javatpoint数据库中获取Customer\表以获取年龄在23 到 26之间的那些客户。 我们正在使用带有WHERE 子句的between 运算符,如我们在以下命令中所见: SELECT cust_id, cust_name, Cust_age FROM customer WHERE cust_age BETWEEN 23 AND 26 ORDER BY cust_age DESC; 输出 执行上述命令后,我们将得到以下输出: 在上面的命令中,我们还可以使用大于等于 (>=)或小于等于 (<=)运算符来代替BETWEEN 运算符。与上述命令相比,此命令将给出类似的结果: SELECT cust_id, cust_name, Cust_age FROM customer WHERE cust_age >=23 AND cust_age <=26 ORDER BY cust_age DESC; 输出 成功执行上述命令后,我们将得到以下结果: 正如我们在上图中所看到的,两个输出都提供了相似的结果,但与大于或等于 (>=)或小于或等于相比,使用PostgreSQL 之间的条件使命令更易于阅读且更高效(<=) 运算符。 Between Condition的 PostgreSQL 示例:带日期 我们将看到如何使用BETWEEN运算符中的日期值以ISO 8601 格式定义文字日期: YYYY-MM-DD。 在这里,我们从Javatpoint数据库中获取部门\表。 在下面的示例中,我们使用between运算符获取在2017-10-12 到 2020-06-22之间加入特定部门的**员工**的信息。 SELECT emp_fname, dept_id, dept_name, joining_date FROM department WHERE joining_date BETWEEN '2017-10-12' AND '2020-06-22' ORDER BY dept_id DESC; 输出 成功执行上述命令后,我们将得到以下结果: 注意:确保范围总是以较低的值统计,因为如果我们从较高的值开始给出范围,它将给出空的结果集。 例如:如果我们在上述命令中提供范围为较高值 (2020-06-22)和较低值 (2017-10-12): SELECT emp_fname, dept_id, dept_name, joining_date FROM department WHERE joining_date BETWEEN '2020-06-22' AND '2017-10-12' ORDER BY dept_id DESC; 输出 在执行上述命令时,我们将得到空表: 在 PostgreSQL 中,我们还可以使用大于等于 (>=)或小于等于 (<=)运算符来代替BETWEEN 运算符。然后该命令将给出与上述命令类似的结果: SELECT emp_fname, dept_id, dept_name, joining_date FROM department WHERE joining_date >='2017-10-12' AND joining_date <='2020-06-22' ORDER BY dept_id DESC; 输出 执行上述命令后,我们将得到以下结果: 执行这两个命令后,我们可以看到,与使用大于或等于 (>=)或小于或等于 (<=)运算符的命令相比,使用Between 运算符的命令更具可读性和更短. 换句话说,我们可以说PostgreSQL比使用其他操作**符更快地实现了使用between 操作符**的命令。 在Between Condition使用 NOT 运算符的示例 在PostgreSQL 中,我们可以在 WHERE 子句中使用NOT 运算符和**between**运算符,从定义的条件与PostgreSQL between条件相矛盾的表中获取数据。 如果我们想获取那些年龄不在23 到 26之间的客户,我们可以使用以下命令: SELECT cust_id, cust_name, Cust_age FROM customer WHERE cust_age NOT BETWEEN 23 AND 26 ORDER BY cust_age DESC; 输出 执行上述命令后,我们将得到以下输出: 在下面的示例中,我们将大于 (>) 和小于 (<)运算符与OR 运算符一起使用,而不是使用NOT BETWEEN/ AND运算符。下面的命令等效于上面的SELECT查询: SELECT cust_id, cust_name, Cust_age FROM customer WHERE cust_age < 23 OR cust_age >26 ORDER BY cust_age DESC; 输出 执行上述命令后,我们将得到以下结果: 概述 在PostgreSQL Between Condition部分,我们学习了以下主题: PostgreSQL 之间运算符的使用用于将值与值范围进行匹配。 我们使用介于Between Condition从特定表中获取数值。 我们使用介于条件从特定表中获取数据值。 我们使用NOT 运算符和PostgreSQL 之间的运算符来获取那些不满足介于Between Condition的值。 PostgreSQL NOT IN Condition PostgreSQL Exists Condition