当我将一个带有视图的表INNER JOIN时,它给了我表和视图的笛卡尔积
我正在使用DB2数据库。我在表和视图之间使用了INNER JOIN,基于表和视图中都存在的列将它们连接起来
select * FROM MYSCHEMA.TABLE_A a INNER JOIN MYSCHEMA.MY_VIEW_A va on a.PRICE_ID=va.PRICE_ID
我的表总共有200条记录,而View返回300条记录。 TABLE_A中的所有PRICE_ID与View中的PRICE_ID列匹配。我没有返回300个结果集,而是在加入它们时获得了60000条记录。
答案 0 :(得分:1)
在两个表中,您似乎拥有相同的@Target(AnnotationTarget.ANNOTATION_CLASS)
值。
这很容易检查重复项:
PRICE_ID
重复项说明了为什么会有这么多行。
答案 1 :(得分:0)
select a.*
FROM MYSCHEMA.TABLE_A a
INNER JOIN (select distinct PRICE_ID
MYSCHEMA.MY_VIEW_A) tmp on tmp.PRICE_ID = a.PRICE_ID