当前位置: 首页 > 面试题库 >

在Oracle中,以1 = 1开头SQL查询的WHERE子句有用吗?

王英奕
2023-03-14
问题内容

我正在与一个客户端一起使用来启动Oracle中几乎所有WHERE子句的客户端1=1。原谅我的无知,但这不是禁忌吗?这种用法是否有负面影响?

这是一个经过整理的示例

SELECT   gpz.zname
         ,gpp.pname
FROM     table1 gpp INNER JOIN table2 gpz ON gpz.p_id = gpp.p_id
WHERE    1=1
         AND gpp.active = 1
         AND gpz.active = 1

问题答案:

这样做是为了简化动态SQL生成。基本上,每个条件都可以添加为,AND <condition>而无需将第一个条件视为特殊条件(其后跟WHEREnot
AND),甚至不用担心是否应该有一个WHERE子句。

因此,只需将其记录为易于使用或可以说是懒惰即可。



 类似资料:
  • 问题内容: 为什么有人在SQL子句中使用(通过连接字符串获得的两种SQL,无论哪种视图定义) 我在某个地方看到过,它将被用来防止SQL注入,但是看起来很奇怪。 如果进行注射,结果将与相同。 稍后编辑:视图定义中的用法如何? 谢谢您的回答。 仍然,我不明白为什么有人会使用这种构造来定义视图,还是在存储过程中使用它。 以这个为例: 问题答案: 如果条件列表在编译时未知,而是在运行时生成,则不必担心是否

  • 1. 定义 慕课解释:子查询,又称嵌套查询,是一种嵌套在其它 SQL 查询的 Where 字句中的查询。 2. 前言 本小节,我们将一起学习 SQL 子查询。 SQL 子查询是一种复杂的查询方式,一般子查询语句都可以被分为主查询部分和子查询部分。子查询部分为主查询部分服务,常用于为主查询返回其所需数据,或者进一步筛选主查询数据。 子查询的知识点其实不多,学习它的难点在于如何将 SQL 查询使用熟练

  • 问题内容: 谁能给我一些关于如何将这种子查询放入提示?(我正在使用 JPA 2.0 - Hibernate 4.x ) -第二个选择将始终获得单个结果或null。 问题答案: 尝试类似以下示例的操作来创建子查询: 请注意,由于附近缺少IDE,因此该代码尚未经过测试。

  • 问题内容: 我在oracle上有Tester表,其中包含以下各列: TesterID TesterName IsDefault Application_ID TesterID是主键。现在,我希望只能有一个默认测试器,这意味着只有一个测试器可以在ApplicationID上具有IsDefault = Y的提示。 我尝试了一个约束: 是否可以在isdefault = Y的位置上设置唯一键? 感谢帮助!

  • 问题内容: 我最近才刚开始使用SQLAlchemy,但仍无法解决某些概念。 归结为基本元素,我有两个这样的表(通过Flask-SQLAlchemy): 我将如何查询用户列表及其最新帖子(不包括无帖子的用户)。如果我使用的是SQL,则可以执行以下操作: 因此,我确切地知道“期望的” SQL可以达到我想要的效果,但是不知道如何在SQLAlchemy中“正确地”表达它。 编辑:如果很重要,我使用的是SQ

  • 问题内容: 我已经在不同的查询示例中看到了很多,而且可能涉及所有SQL引擎。 如果存在没有条件的查询,定义的人员(特别是ORM框架)通常会添加始终为真的条件或类似条件。 所以代替 他们使用 我想到的唯一可能的原因是,如果要动态添加条件,则不必担心会剥离初始条件,但如果查询中存在实际条件,则仍然经常会剥离此条件。 CakePHP的实际示例(由框架生成): (无条件) (有条件) 有什么理由要增加这种