From d1e610a8c6efea85083d1f44666c80602ad84b6d Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Sat, 26 Sep 2015 07:09:44 -0500 Subject: [PATCH] working on crossprodut --- DBEngine.cpp | 99 +++++++++++++++++++++++++++++++++++++-------------- DBEngine.h | 4 +-- Relation.cpp | 4 +++ Relation.h | 1 + a.out | Bin 97311 -> 101732 bytes test.cpp | 21 ++++------- 6 files changed, 86 insertions(+), 43 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 3f1082f..08becc2 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -101,6 +101,7 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ else { //currently all returned relations are called TEMP Relation new_r = r1; + new_r.setTableName("TEMP"); vector temp; bool duplicate = false; @@ -122,32 +123,76 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ } return new_r; - - - - - - /*vector r1_atts = r1.getAttributes(); - vector r2_atts = r2.getAttributes(); - vector new_atts = r1_atts; - - for (int i = 0; i < r2_atts.size(); ++i) { - for (int j = 0; j < r2_atts[i].getSize(); ++j){ - new_atts[i].addCell(r2_atts[i][j]); - } - } - - for (int i = 0; i < new_atts.size(); ++i) { - for (int j = 0; j < new_atts.size(); ++j){ - if (new_atts[i] == new_atts[j]){ - new_atts.erase(new_atts.begin() + i); - continue; - } - } - } - - //currently all returned relations are called TEMP - Relation new_r("TEMP", new_atts); - return new_r;*/ } } + +Relation DBEngine::setDiff(Relation r1, Relation r2){ + if (r1.getAttributeNames() != r2.getAttributeNames()){ + cout << "Failure to diff: the relations are not union-compatible.\nreturning the first relation.\n"; + return r1; + } + + else { + //currently all returned relations are called TEMP + Relation new_r = r1; + new_r.setTableName("TEMP"); + vector temp; + bool duplicate = false; + + for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i){ + new_r.removeTuple(i); + } + + for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i) { + temp = r1.getTuple(i); + + for (int j = 0; j < r2.getAttributes()[0].getSize(); ++j){ + if (temp == r2.getTuple(j)){ + duplicate = true; + break; + } + } + + if (!duplicate){ + new_r.insertTuple(temp); + } + + duplicate = false; + } + + //make this one for loop later! + + for (int i = 0; i < r2.getAttributes()[0].getSize(); ++i) { + temp = r2.getTuple(i); + + for (int j = 0; j < r1.getAttributes()[0].getSize(); ++j){ + if (temp == r1.getTuple(j)){ + duplicate = true; + break; + } + } + + if (!duplicate){ + new_r.insertTuple(temp); + } + + duplicate = false; + } + + return new_r; + } +} + +Relation DBEngine::crossProduct(Relation r1, Relation r2){ + vector new_atts = r1.getAttributes(); + + for (int i = 0; i < r2.getAttributes().size(); ++i) { + new_atts.push_back(r2.getAttributes()[i]); + } + + //currently all returned relations are called TEMP + Relation new_r("TEMP", new_atts); + + + return new_r; +} \ No newline at end of file diff --git a/DBEngine.h b/DBEngine.h index 878a42e..53aa9c2 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -22,6 +22,6 @@ public: Relation projection(vector input, Relation r); void rename(Relation& r, vector oldnames, vector newnames); Relation setUnion(Relation r1, Relation r2); - //void setDiff(); - //void crossProduct(); + Relation setDiff(Relation r1, Relation r2); + Relation crossProduct(Relation r1, Relation r2); }; diff --git a/Relation.cpp b/Relation.cpp index 86a6dad..18d4728 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -23,6 +23,10 @@ string Relation::getTableName(){ return name; } +void Relation::setTableName(string s){ + name = s; +} + Attribute Relation::operator[](int i){ return att[i]; } diff --git a/Relation.h b/Relation.h index 2a8846c..172627f 100755 --- a/Relation.h +++ b/Relation.h @@ -13,6 +13,7 @@ public: Relation(string n, vector a); void insertAttributes(vector a); string getTableName(); + void setTableName(string s); Attribute operator[](int i); vector getTuple(int index); vector getAttributes(); diff --git a/a.out b/a.out index 54f580c771995270a139f89552204b6cc6a36474..fdcea516825c0a6437cc643cb7f00dac49fc9e1a 100755 GIT binary patch literal 101732 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 v2; v2.push_back(att4); v2.push_back(att5); - v2.push_back(att6); engine.createTable("MoarFood", v2); - engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + engine.crossProduct(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); }