diff --git a/src/adapter/postgres.spec.ts b/src/adapter/postgres.spec.ts
index 80167f09c0f07aeb46645ae8dd476ef32cb7e7e9..ffa9b2ab72dba8cc6c0b12bb2af7652ab274f1fd 100644
--- a/src/adapter/postgres.spec.ts
+++ b/src/adapter/postgres.spec.ts
@@ -376,4 +376,23 @@ describe("postgres adapter", () => {
             done();
         });
     });
+
+    it("should get data from view when joins propaged is in the aggregation", (done) => {
+        let view = adapterScenario.propagatedClauseAggrView;
+        adapter.getDataFromView(view, (err, result) => {
+            expect(err).to.be.a("null");
+            expect(result).to.be.an("array");
+            expect(result).to.have.length(8);
+            expect(result[0]).to.be.an("object");
+            let keys: string[] = [];
+            keys = keys.concat(view.metrics.map((item) => item.name));
+            keys = keys.concat(view.dimensions.map((item) => item.name));
+            result.forEach((row) => {
+                expect(row).to.be.an("object");
+                expect(row).to.have.all.keys(keys);
+            });
+
+            done();
+        });
+    });
 });
diff --git a/src/adapter/postgres.ts b/src/adapter/postgres.ts
index f2c7a3532b01168d01ab75540b3868fc815143a8..ad6d4285b0a03f710de503b2f7100c2940a5dfc4 100644
--- a/src/adapter/postgres.ts
+++ b/src/adapter/postgres.ts
@@ -201,7 +201,9 @@ export class PostgresAdapter extends Adapter {
                         notCoveredClauses.push(clausesToCover[j]);
                     }
                 }
-                clausesToCover = notCoveredClauses;
+                clausesToCover = notCoveredClauses.filter((clause) => {
+                    return !partialJoin[i].clauses.some((c) => c.id === clause.id);
+                });
                 if (dims.length  < partialJoin[i].dimensions.length || coveredClauses.length > 0) {
                     const partial = new View({
                         metrics: partialJoin[i].metrics,
diff --git a/test/scenario.ts b/test/scenario.ts
index 946f1b7c33e4bf2c52dab0721adf3c1561d4e17c..347ff2bbf85961823972b46e0298d97d21d3612c 100644
--- a/test/scenario.ts
+++ b/test/scenario.ts
@@ -55,6 +55,7 @@ interface AdapterScenario {
     unMaterializebleView: View;
     partialJoinView: View;
     propagatedClauseView: View;
+    propagatedClauseAggrView: View;
 }
 
 interface DataCtrlScenario {
@@ -364,6 +365,15 @@ const propagatedClauseView  = new View({
     clauses: [clauses.view7dim5, clauses.view6dim4]
 });
 
+const propagatedClauseAggrView  = new View({
+    metrics: [mets[8], mets[5]],
+    dimensions: [dims[2]],
+    materialized: false,
+    origin: false,
+    childViews: [views[9], views[6], views[7]],
+    clauses: [clauses.view7dim5, clauses.view6dim4, clauses.view9dim2]
+});
+
 export const engineScenario: EngineScenario = {
     metrics: mets,
     dimensions: dims,
@@ -391,7 +401,8 @@ export const adapterScenario: AdapterScenario = {
     notOriginCount: notOriginCount,
     unMaterializebleView: unMaterializebleView,
     partialJoinView: partialJoinView,
-    propagatedClauseView: propagatedClauseView
+    propagatedClauseView: propagatedClauseView,
+    propagatedClauseAggrView: propagatedClauseAggrView
 };
 
 export const dataCtrlScenario: DataCtrlScenario = {