内部查询是否可以?

2023-12-28

我经常看到类似的东西...

SELECT events.id, events.begin_on, events.name
  FROM events
 WHERE events.user_id IN ( SELECT contacts.user_id 
                             FROM contacts 
                            WHERE contacts.contact_id = '1')
   OR events.user_id IN ( SELECT contacts.contact_id 
                            FROM contacts 
                           WHERE contacts.user_id = '1')

查询中可以有查询吗?是“内心的询问”吗? “子查询”?它算作三个查询吗(我的例子)?如果这样做不好......我该如何重写我的例子?


你的例子还不错。最大的问题通常来自所谓的“相关子查询”的情况。此时子查询依赖于外部查询中的列。这些特别糟糕,因为实际上需要为潜在结果中的每一行重新运行子查询。

您可以使用联接重写子查询和GROUP BY,但性能可能会有所不同,尤其取决于您的 RDBMS。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

内部查询是否可以? 的相关文章

  • Django 模型 - 外键作为主键

    我有以下2张表 在 models py 中 class Foo models Model uuid models CharField UUID primary key True default uuid4 and class FooExt
  • 子查询与连接

    我重构了从另一家公司继承的应用程序的一个缓慢部分 以使用内部联接而不是子查询 例如 WHERE id IN SELECT id FROM 重构后的查询运行速度提高了约 100 倍 50 秒到 0 3 我预计会有改进 但谁能解释为什么它如此剧
  • 如何在 SQL 中存储目标(例如 RPG Quest)

    今天有人问我他们应该如何将任务目标存储在 SQL 数据库中 在这种情况下 请考虑角色扮演游戏 目标可能包括以下一些内容 发现 地点 杀死 n MOB 类型 获取 对象 的 n 个 实现 技能组 中的 技能 你在角色扮演游戏中获得的所有其他东
  • MySQL - 查询合并具有相同 id 的行并保留该 id 的所有条目但作为一条记录

    我一直在处理本地保存在 wamp 服务器上的 mysql 数据库中的表 我正在使用 wamp 中的 phpmyadmin 区域来运行查询 我正在尝试获取数据来执行以下操作 谁能帮我制作一张包含许多植物记录的表格 植物可以有多个名称 表格将其
  • 如何以编程方式使用包含多列的 where-in 子句执行 PostgreSQL 查询?

    我的查询是这样的 select from plat customs complex where code t code s in 01013090 10 01029010 90 它在 psql 控制台中运行良好 我的问题是如何在客户端代码中
  • mysql 在 sum() 函数上使用 concat,例如 concat(sum(col1),"%")

    我正在尝试合并多个查询 但其中一个查询使用 sum 当我尝试在此列上应用 concat 时 我得到不需要的 blob 结果 我如何在聚合列上应用 concat 和 union 我期待这个结果 SELECT row 1 col1 UNION
  • 如何查找列中未使用的ID? [复制]

    这个问题在这里已经有答案了 可能的重复 SQL查询查找丢失的序列号 https stackoverflow com questions 1057389 sql query to find missing sequence numbers 我
  • SQL如何将两个日期之间一小时内的事件相加并显示在一行中

    我正在使用 C 和 SQL Server 2005 开发一份报告 我只需显示我们每小时获得的点击次数 桌子很大 输出应如下所示 Row Date Time Hit Count 1 07 05 2012 8 00 3 2 07 05 2012
  • SQL Server:触发器如何读取插入、更新、删除的值

    我在一张表中有触发器并且想阅读UserId插入 更新或删除行时的值 怎么做 下面的代码不起作用 我收到错误UPDATED ALTER TRIGGER dbo UpdateUserCreditsLeft ON dbo Order AFTER
  • 如何在sql server中对行号进行内连接

    SQL Server 2008 两张表 表A有以下数据 RowA RowB RowC RowD 表B有以下数据 Row4 Row3 Row2 Row1 我想得到以下输出 RowA Row1 RowB Row2 RowC Row3 RowD
  • 表达与空列表相同的 IN 条件的可移植方式是什么?

    例如 工作于sqllite3 select from orders where custid and status in 但它失败了postgres ksysdb select code applicable objecttype from
  • 交换 ms-sql 表

    我想以尽可能最好的方式交换到桌子 我有一个 IpToCountry 表 并根据导入的外部 CSV 文件每周创建一个新表 我发现进行切换的最快方法是执行以下操作 sp rename IpToCountry IpToCountryOld go
  • 存储过程总是返回0

    我试图从存储过程获取返回值 但它总是返回 0 c code cmd new SqlCommand cmd CommandType CommandType StoredProcedure cmd CommandText AbsentEntry
  • 获取一组记录之间的时间差

    我有一个具有以下结构的表 ID ActivityTime Status 19 2013 08 23 14 52 1 19 2013 08 23 14 50 1 19 2013 08 23 14 45 2 19 2013 08 23 14 3
  • 什么会导致 Oracle ROWID 更改?

    AFAIK Oracle 中的 ROWID 表示相应数据文件中记录的物理位置 在什么情况下记录的ROWID可能会改变 我所知道的一个是分区表上的更新 它将记录 移动 到另一个分区 还有其他情况吗 我们的大多数数据库都是 Oracle 10
  • 日志中每天的每周活跃用户数

    我想知道是否有人可以帮助我使用一些 SQL 来返回两天或更长时间内登录到数据库表的唯一用户数量 让我们使用 7 天作为参考 我的日志表在每一行中包含时间戳 ts 和 user id 表示该用户当时的活动 以下查询返回此日志中的每日活跃用户数
  • 数据库级别的别名列名 [MySQL]

    别名 可能是错误的词 因为它是在将列 表名称作为查询中的其他名称引用的上下文中使用的 我感兴趣的是是否有一种方法可以在数据库中为列指定两个名称 如果我要打印这样的表格 它看起来会是这样的 mysql gt SELECT FROM User
  • 在 where 子句中使用聚合函数和不同的列条件

    select PO Order Qty Avg PO Order Qty as totalAverage FROM FirstStrike Retail custom Whse Pricing QR where item code 111
  • 如何使用sql脚本更改列的属性

    如何使用 sql 脚本更改列的属性 这是我尝试过但出现错误的方法 ALTER TABLE dbo tblBiometricPattern COLUMN BiometricPatternID TINYINT NOT NULL IDENTITY
  • 更新 SQLAlchemy 中的特定行

    我将 SQLAlchemy 与 python 一起使用 我想更新表中等于此查询的特定行 UPDATE User SET name user WHERE id 3 我通过 sql alchemy 编写了这段代码 但它不起作用 session

随机推荐

  • Rails 购物车 - 未添加到当前订单

    这里是 Rails 菜鸟 我正在构建一个基本的购物车 它之前运行良好 在不更改任何代码的情况下 我 git reset hard 到我以前的提交 它正在工作 它就崩溃了 这是细分 Github 仓库 https github com chr
  • 编译引用的dll

    使用VS2005和VB NET 我有一个项目 它是我创建的数据存储的 API 编译时创建api dll 我在同一解决方案中有第二个项目 它有一个对 API 项目的项目引用 编译时将创建wrapper dll 这基本上是特定于应用程序的 AP
  • 显示对象而不是字符串

    在这里 我附上了我的问题的快照和代码 它只向我显示作为对象的内容 但完美地显示组名 这个问题的快照在下面的链接中给出 只需浏览这张图片 http imageupload org d 4DA941521 快照 gt 我想要特定组名称的子数据
  • 使用 kafka 进行 Spark 结构化流处理只会导致一批(Pyspark)

    我有以下代码 我想知道为什么它只生成一批 df spark readStream format kafka option kafka bootstrap servers IP option subscribe Topic option st
  • 如何设计一个数据库来存储属性,通过同义词选择属性

    我正在为房地产应用程序设计一个数据库 事实证明 它比我预期的更复杂 也许我把事情复杂化了 这些问题本质上是由于以下因素的存在造成的 同义词 例如 术语 公寓 公寓和顶层公寓本质上都指的是同一类型的房产 属性 不同的属性类型有不同的属性 例如
  • 批处理:连接变量和字符串以形成输出路径

    我有一个批处理文件 用户在其中输入文件的路径 然后从该路径中提取文件名 我使用该文件名创建一个同名的文件夹 在该文件夹中 我想创建一个 log txt 文件 我在批处理文件中调用的进程可以将其日志消息写入其中 这是代码 set p path
  • 将数据框与从应用函数创建的另一个数据框合并?

    我有一个数据框 df 工资数据 State Annual Salary New York 132826 New Hampshire 128704 California 127388 Vermont 121599 Idaho 120011 还
  • 在 C# 中访问已释放的闭包?

    我正在调查 Microsoft 企业库 数据应用程序块 示例 sln 他们有一个异步读取数据的示例 IAsync 虽然新版本 6 也支持async 但是雷沙珀 或视觉工作室 没关系 向我展示 访问已处理的闭包 首先我将显示图像 这样会更清晰
  • 从一个位置移动到另一个位置后 UIButton 框架发生变化

    我有 1UIButton in StoryBoard就像下面的屏幕一样 我移动UIButton按照此从一个位置到另一个位置Answer https stackoverflow com questions 45392104 drag uibu
  • NetBeans 远程连接

    我正在尝试设置 netBeans 远程项目 但遇到了很多麻烦 我已经从远程服务器启动了一个 PHP 应用程序 在最后一个确认步骤中它向我抛出了错误 没有可供下载的文件 尝试在远程配置中检查被动模式 在日志输出中 它失败了 gt 215 UN
  • Facelets ui:remove 标签的实际意义

    我想了解基本机制
  • Maven 原型不使用属性来创建模块名称

    我创建了一个原型 您可以在其中设置 moduleName 或期望 使用 必需的属性 moduleName 这里是原型元数据 xml 减少 我也尝试过类似的结果
  • 数据库中的闰秒处理

    As The Unix time number is zero at the Unix epoch and increases by exactly 86400 per day since the epoch So it cannot re
  • DTD 是否已被弃用?

    In XML 模式和 DTD 有什么区别 https stackoverflow com questions 1544200 what is difference between xml schema and dtd 两个回答者表示 DTD
  • Angular Js HTML5 模式不起作用 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我正在尝试将 HTML5 模式添加到我的 Angular 应用程序中以删除 符号 问题是它根本行不通 我的整个 ng view 将
  • Maven:在战争构建的资源文件夹中包含文件夹

    我在 src main resource 中有一个名为 extra jars 的文件夹 但如何将它们包含在构建中 我希望它们与其余的 jar 一起放入 lib 文件夹中 我尝试将它们包括在内 但这没有用 对于不是由 Maven 存储库分发的
  • 消息:配置的数据库连接是持久的。正在中止

    Codeigniter 2 到 3 版本升级后 出现此错误 为什么会这样呢 遇到未捕获的异常 类型 异常 消息 配置的数据库连接是持久的 正在流产 文件名 var www vhosts xxx com app system librarie
  • R代码gmapsdistance

    我有以下代码用于查找两个位置之间的旅行时间 我使用 vba 调用脚本 这就是命令 args 显示在顶部的原因 但出于测试目的 我只是设置变量 这一直有效到今天 没有改变任何东西 现在一旦我运行结果行 我就不断收到此错误 Error in r
  • Numpy 在矩阵上按百分比分割

    我在理解以下编码时遇到问题 并且我是 python 新手 data a data b data C np split original data sample frac 1 random state 1729 int 0 7 len ori
  • 内部查询是否可以?

    我经常看到类似的东西 SELECT events id events begin on events name FROM events WHERE events user id IN SELECT contacts user id FROM