sql - 为什么要在 SQL 中使用 WHERE 1=0 语句?

标签 sql database where-clause

我看到一个查询在应用程序的日志文件中运行。它包含如下查询:

SELECT ID FROM CUST_ATTR49 WHERE 1=0

这样一个注定什么都不返回的查询有什么用?

最佳答案

像这样的查询可以用来 ping 数据库。子句:

WHERE 1=0

确保发回非数据,因此不会占用 CPU、网络流量或其他资源消耗。

这样的查询可以测试:

  • 服务器可用性
  • CUST_ATTR49 表存在
  • ID 列存在
  • 保持联系
  • 在不更改任何行的情况下触发触发器(使用 where 子句,但不在选择查询中)
  • 管理动态查询中的许多 OR 条件(例如 WHERE 1=0 OR <condition>)

关于sql - 为什么要在 SQL 中使用 WHERE 1=0 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9140606/

相关文章:

MySQL WHERE 子句构造问题

mysql - SQL INSERT INTO 语句..错误,我对 SQL 很陌生

sql - 列式数据库优化与关系数据库优化有何不同?

mysql - 选择进入不工作

Java、代码生成和持久性框架

mysql - 模拟 "create user if not exists"语法错误

sql - 在 Rails 中递归获取记录

mysql - 如何获得每组的最大行数?

c# - 连接到数据库

mysql order by MIN() where NOT NULL