2010-11-01 81 views
2

我在加入大量表格时遇到PostgreSQL中的sql查询问题。 在'WHERE'部分,我有几个条件来比较一些id值,例如PostgreSQL加入空条件变量表

​​

当每一个ID没有空值,一切正常,但如果连一个ID等于空,当查询结果为空。 我可以获得这样的结果吗?如果一个id等于null,那么只有来自这个表的值为null,但是其余部分是正确的?

更具体地讲,我编程在Java中,使用EJB3:

stringQuery = "SELECT .... FROM ... WHERE..."; 
Query query = entityManager.createNativeQuery(stringQuery); 
List<Object[]> objects = query.getResultList(); 
+0

再次阅读问题我不确定你在问什么......“如果一个id等于null,那么只有来自这个表的值是null,但其余的是正确的?” – 2010-11-01 11:13:58

回答

1
SELECT * 
FROM app 
LEFT JOIN 
     operator 
ON  operator.agent_id = app.operator_id 
0

它移到您的加入(左连接)在你的WHERE子句会导致内部连接的条件。