查找两列中的值是否存在

时间:2015-07-01 05:20:22

标签: postgresql

我有两列日期,如果第一列中存在日期并且第二列中存在日期,我想运行一个返回TRUE的查询。

我知道如何在寻找匹配时执行此操作(如果A列中的数据条目是作为B列中的条目的SAME),但我不知道如何查找数据是否在A列和B列存在。

有谁知道怎么做?谢谢!

2 个答案:

答案 0 :(得分:0)

如果列中的数据存在,则为IS NOT NULL。您可以使用和AND子句在两列上查询,以获得结果:

SELECT (date1 IS NOT NULL AND date2 IS NOT NULL) AS both_dates
FROM mytable;

答案 1 :(得分:0)

所以,改写:

对于xdateab的表x1中的任意两个条目,是否有一对行x2和{{ 1}} x1.a = x2.b

如果您正在尝试执行此操作,则需要自加入,例如,假设存在名为id的单个键列:

SELECT x1.id, x2.id, x1.a AS x1_a_x2_b
FROM mytable x1
  INNER JOIN mytable x2 ON (x1.a = x2.b);