gpt4 book ai didi

SQL - 返回 ID 的所有行,其中一行满足条件 A、B 或 C

转载 作者:行者123 更新时间:2023-12-02 08:14:22 24 4
gpt4 key购买 nike

我正在尝试返回特定 ID 的所有行,其中满足与这些 ID 相关的任何行的条件。请原谅我是 SQL 的新手......下面的示例:


  • ID * 行 * # *


  • 12 * 1 * A *

  • 12 * 2 * B *
  • 12 * 3 * X *
  • 12 * 4 * Y *
  • 15 * 1 * A *
  • 15 * 2 * B *
  • 15 * 3 * C *

除了要返回的选择和条件 = (X, Y, or Z) 之外,不确定代码是什么:


  • ID * 行 * # *


  • 12 * 1 * A * <-- 不包括 X、Y 或 Z,但它是 ID 的一部分

  • 12 * 2 * B * <-- 在该 ID 的另一行中有 X
  • 12 * 3 * X *
  • 12 * 4 * Y *

尽管不满足条件,但我想提取所有行记录,只要它们是具有满足条件的行的 ID 的一部分即可。

感谢您的帮助!

* 编辑:包括尝试的代码*

SELECT ID
,LINE
,#
WHERE ID,
IN (
SELECT ID
WHERE # IN ('X','Y','Z'))

结果:

ID  LINE  #
12 3 X
12 4 Y

我需要什么:

ID  LINE  #
12 1 A
12 2 B
12 3 X
12 4 Y

我几乎觉得我需要使用我的 IN('X','Y','Z') 条件创建 ID 和 LINE 的临时表,然后对所有 LINE(s) 而不是 X 的 ID 进行内部连接,Y,Z。我认为这可能有效,但我还没有学会如何使用临时表。我有点麻烦,因为我正在使用一个查询,我在这里简化了很多,我在其中选择了 18 个字段,这些字段加入了其他 7 个表。我认为这只是使我对子查询的理解复杂化,而不是受其影响的子查询。

感谢大家迄今为止的帮助和回答!

最佳答案

您可以为此使用子查询和 IN

Select *
From YourTable
where ID in (select ID from YourTable where # in ('X','Y','Z'))

请注意,您的数据中没有 12 * 4 * C *,但我认为您的结果中只是一个 type-o,应该是 12 * 4 * Y *

关于SQL - 返回 ID 的所有行,其中一行满足条件 A、B 或 C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43285066/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com