【问题标题】:Select query on a Table based on condition from other table ? No Foreign key根据其他表中的条件选择表上的查询?没有外键
【发布时间】:2023-03-10 20:30:02
【问题描述】:

如果从表 B 返回不同的选择查询,我想从表 A 进行选择查询。 表中的查询可以从 B 中选择 1,其中 x= 某物。 表 A 中的查询可能完全不同。

我可以在单个 SQL 查询中执行此操作吗? 实现这一目标的最佳方法是什么?

我正在使用 postgres

【问题讨论】:

  • 您必须更加具体地要求任何人都能够正确回答这个问题,也就是说,在 sql 查询中可以使用大小写条件。

标签: mysql sql postgresql


【解决方案1】:

听上去你想要这样的东西:

SELECT  A.SomeColumn, A.AnotherColumn
FROM    A
WHERE   EXISTS (SELECT 1 FROM B WHERE B.X = Something);

【讨论】:

  • 如何区分表 A 为空且条件通过的情况,其他情况是条件失败的情况。在这两种情况下,查询都将返回 null
  • 你真的不能没有单独的查询。同样,如果您运行查询 select a from t where a = 1 并且没有返回任何结果,您将不知道 t 是否为空或没有 a 为 1 的行,除非您运行 select count(a) from t
猜你喜欢
  • 2019-12-13
  • 2021-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-15
  • 2015-05-28
  • 2021-12-02
  • 1970-01-01
相关资源
最近更新 更多