diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 90f6bf29b2de7acc454b6fdefd60505ef1e5db7d..7d9f6af4797da3aa6540b7792daccf37c232f2d2 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -2,12 +2,11 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="8debb13c-dec3-4d96-b552-5550bc63772b" name="Default" comment="">
-      <change afterPath="$PROJECT_DIR$/.idea/php.xml" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/src/Select/DoesSelectQueryByEntryId.php" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/src/Select/DoesSelectQueryByValue.php" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/Select/DoesSelectQuery.php" beforeDir="false" afterPath="$PROJECT_DIR$/src/Select/DoesSelectQuery.php" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/Select/ValueSelectQueryBuilder.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/Select/Entry.php" beforeDir="false" afterPath="$PROJECT_DIR$/src/Select/Entry.php" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/Select/EntryValues.php" beforeDir="false" afterPath="$PROJECT_DIR$/src/Select/EntryValues.php" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/Select/SelectQueryBuilder.php" beforeDir="false" afterPath="$PROJECT_DIR$/src/Select/SelectQueryBuilder.php" afterDir="false" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="TRACKING_ENABLED" value="true" />
@@ -20,14 +19,14 @@
     <pharConfigPath>$PROJECT_DIR$/composer.json</pharConfigPath>
   </component>
   <component name="FileEditorManager">
-    <splitter split-orientation="horizontal" split-proportion="0.5078864">
+    <splitter split-orientation="horizontal" split-proportion="0.6553628">
       <split-first>
         <leaf>
           <file leaf-file-name="FeatureContainer.php" pinned="false" current-in-tab="false">
             <entry file="file://$PROJECT_DIR$/src/Features/FeatureContainer.php">
               <provider selected="true" editor-type-id="text-editor">
                 <state relative-caret-position="609">
-                  <caret line="70" column="29" lean-forward="true" selection-start-line="70" selection-start-column="29" selection-end-line="70" selection-end-column="29" />
+                  <caret line="70" column="29" selection-start-line="70" selection-start-column="29" selection-end-line="70" selection-end-column="29" />
                   <folding>
                     <element signature="e#57#99#0#PHP" expanded="true" />
                   </folding>
@@ -39,7 +38,7 @@
             <entry file="file://$PROJECT_DIR$/src/DeleteQueries.php">
               <provider selected="true" editor-type-id="text-editor">
                 <state relative-caret-position="576">
-                  <caret line="60" lean-forward="true" selection-start-line="60" selection-end-line="60" />
+                  <caret line="60" selection-start-line="60" selection-end-line="60" />
                 </state>
               </provider>
             </entry>
@@ -47,35 +46,17 @@
           <file leaf-file-name="EntryValues.php" pinned="false" current-in-tab="true">
             <entry file="file://$PROJECT_DIR$/src/Select/EntryValues.php">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="397">
-                  <caret line="59" column="22" selection-start-line="59" selection-start-column="22" selection-end-line="59" selection-end-column="22" />
+                <state relative-caret-position="120">
+                  <caret line="8" column="43" selection-start-line="8" selection-start-column="43" selection-end-line="8" selection-end-column="43" />
                 </state>
               </provider>
             </entry>
           </file>
-          <file leaf-file-name="DoesSelectQuery.php" pinned="false" current-in-tab="false">
-            <entry file="file://$PROJECT_DIR$/src/Select/DoesSelectQuery.php">
+          <file leaf-file-name="ValueSelectQueryBuilder.php" pinned="false" current-in-tab="false">
+            <entry file="file://$PROJECT_DIR$/src/Select/ValueSelectQueryBuilder.php">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="105">
-                  <caret line="7" column="25" selection-start-line="7" selection-start-column="10" selection-end-line="7" selection-end-column="25" />
-                </state>
-              </provider>
-            </entry>
-          </file>
-          <file leaf-file-name="SelectQueryBuilder.php" pinned="false" current-in-tab="false">
-            <entry file="file://$PROJECT_DIR$/src/Select/SelectQueryBuilder.php">
-              <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="663">
-                  <caret line="59" column="91" lean-forward="true" selection-start-line="59" selection-start-column="91" selection-end-line="59" selection-end-column="91" />
-                </state>
-              </provider>
-            </entry>
-          </file>
-          <file leaf-file-name="DoesSelectQueryByValue.php" pinned="false" current-in-tab="false">
-            <entry file="file://$PROJECT_DIR$/src/Select/DoesSelectQueryByValue.php">
-              <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="150">
-                  <caret line="10" column="32" selection-start-line="10" selection-start-column="10" selection-end-line="10" selection-end-column="32" />
+                <state relative-caret-position="450">
+                  <caret line="30" column="24" lean-forward="true" selection-end-line="47" />
                 </state>
               </provider>
             </entry>
@@ -83,8 +64,8 @@
           <file leaf-file-name="Entry.php" pinned="false" current-in-tab="false">
             <entry file="file://$PROJECT_DIR$/src/Select/Entry.php">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="23">
-                  <caret line="9" column="33" lean-forward="true" selection-start-line="9" selection-start-column="33" selection-end-line="9" selection-end-column="33" />
+                <state relative-caret-position="345">
+                  <caret line="23" selection-start-line="23" selection-end-line="23" />
                 </state>
               </provider>
             </entry>
@@ -130,6 +111,9 @@
         <option value="$PROJECT_DIR$/src/Select/DoesSelectQuery.php" />
         <option value="$PROJECT_DIR$/src/Select/DoesSelectQueryByValue.php" />
         <option value="$PROJECT_DIR$/src/Select/DoesSelectQueryByEntryId.php" />
+        <option value="$PROJECT_DIR$/src/Select/SelectQueryBuilder.php" />
+        <option value="$PROJECT_DIR$/src/Select/Entry.php" />
+        <option value="$PROJECT_DIR$/src/Select/ValueSelectQueryBuilder.php" />
         <option value="$PROJECT_DIR$/src/Select/EntryValues.php" />
       </list>
     </option>
@@ -142,6 +126,9 @@
     <detection-done>true</detection-done>
     <sorting>DEFINITION_ORDER</sorting>
   </component>
+  <component name="NodeModulesDirectoryManager">
+    <handled-path value="$PROJECT_DIR$/node_modules" />
+  </component>
   <component name="NodePackageJsonFileManager">
     <packageJsonPaths>
       <path value="$PROJECT_DIR$/Tests/plugins/caldera-forms/includes/freemius/package.json" />
@@ -270,12 +257,12 @@
       <option name="number" value="Default" />
       <option name="presentableId" value="Default" />
       <updated>1526182556614</updated>
-      <workItem from="1526182558454" duration="2632000" />
+      <workItem from="1526182558454" duration="3014000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="2632000" />
+    <option name="totallyTimeSpent" value="3014000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="260" y="43" width="1660" height="937" extended-state="0" />
@@ -284,7 +271,7 @@
       <window_info anchor="bottom" id="TODO" order="6" />
       <window_info anchor="bottom" id="Event Log" side_tool="true" />
       <window_info anchor="bottom" id="Database Changes" show_stripe_button="false" />
-      <window_info anchor="bottom" id="Run" order="2" />
+      <window_info anchor="bottom" id="Run" order="2" weight="0.3297619" />
       <window_info anchor="bottom" id="Version Control" />
       <window_info active="true" anchor="bottom" id="Terminal" visible="true" weight="0.14761905" />
       <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.21631645" />
@@ -348,7 +335,7 @@
     <entry file="file://$PROJECT_DIR$/src/Features/FeatureContainer.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="609">
-          <caret line="70" column="29" lean-forward="true" selection-start-line="70" selection-start-column="29" selection-end-line="70" selection-end-column="29" />
+          <caret line="70" column="29" selection-start-line="70" selection-start-column="29" selection-end-line="70" selection-end-column="29" />
           <folding>
             <element signature="e#57#99#0#PHP" expanded="true" />
           </folding>
@@ -358,49 +345,56 @@
     <entry file="file://$PROJECT_DIR$/src/DeleteQueries.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="576">
-          <caret line="60" lean-forward="true" selection-start-line="60" selection-end-line="60" />
+          <caret line="60" selection-start-line="60" selection-end-line="60" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/Select/Entry.php">
+    <entry file="file://$PROJECT_DIR$/src/Select/DoesSelectQueryByEntryId.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="23">
-          <caret line="9" column="33" lean-forward="true" selection-start-line="9" selection-start-column="33" selection-end-line="9" selection-end-column="33" />
+        <state relative-caret-position="390">
+          <caret line="26" column="36" selection-start-line="26" selection-start-column="36" selection-end-line="26" selection-end-column="36" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/Select/DoesSelectQuery.php">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="210">
+          <caret line="14" column="7" lean-forward="true" selection-start-line="14" selection-start-column="7" selection-end-line="14" selection-end-column="7" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/Select/DoesSelectQueryByValue.php">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="150">
-          <caret line="10" column="32" selection-start-line="10" selection-start-column="10" selection-end-line="10" selection-end-column="32" />
+          <caret line="10" column="10" selection-start-line="10" selection-start-column="10" selection-end-line="10" selection-end-column="10" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/Select/SelectQueryBuilder.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="663">
-          <caret line="59" column="91" lean-forward="true" selection-start-line="59" selection-start-column="91" selection-end-line="59" selection-end-column="91" />
+        <state relative-caret-position="450">
+          <caret line="31" column="5" lean-forward="true" selection-start-line="31" selection-start-column="5" selection-end-line="31" selection-end-column="5" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/Select/DoesSelectQuery.php">
+    <entry file="file://$PROJECT_DIR$/src/Select/Entry.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="105">
-          <caret line="7" column="25" selection-start-line="7" selection-start-column="10" selection-end-line="7" selection-end-column="25" />
+        <state relative-caret-position="345">
+          <caret line="23" selection-start-line="23" selection-end-line="23" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/Select/DoesSelectQueryByEntryId.php">
+    <entry file="file://$PROJECT_DIR$/src/Select/ValueSelectQueryBuilder.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="390">
-          <caret line="26" column="36" selection-start-line="26" selection-start-column="36" selection-end-line="26" selection-end-column="36" />
+        <state relative-caret-position="450">
+          <caret line="30" column="24" lean-forward="true" selection-end-line="47" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/Select/EntryValues.php">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="397">
-          <caret line="59" column="22" selection-start-line="59" selection-start-column="22" selection-end-line="59" selection-end-column="22" />
+        <state relative-caret-position="120">
+          <caret line="8" column="43" selection-start-line="8" selection-start-column="43" selection-end-line="8" selection-end-column="43" />
         </state>
       </provider>
     </entry>
diff --git a/src/Select/Entry.php b/src/Select/Entry.php
index 4ececde6ec6d8520f463e409d76415b3baa82edd..df8b1069908f9b1ae843d333c60d74244b047596 100644
--- a/src/Select/Entry.php
+++ b/src/Select/Entry.php
@@ -22,17 +22,6 @@ class Entry extends SelectQueryBuilder
 		return $this->is('form_id', $formId);
 	}
 
-	/**
-	 * Get entry by ID
-	 *
-	 * @param int $entryId Entry ID
-	 * @return $this
-	 */
-	public function queryByEntryId($entryId)
-	{
-		return $this->is('id', $entryId);
-	}
-
 	/**
 	 * Query by entry ids
 	 *
@@ -55,4 +44,10 @@ class Entry extends SelectQueryBuilder
 	{
 		return $this->is('user_id', $userId);
 	}
+
+	/** @inheritdoc */
+	public function getEntryIdColumn()
+	{
+		return 'id';
+	}
 }
diff --git a/src/Select/EntryValues.php b/src/Select/EntryValues.php
index 99c0ffc1f787dbafaafe869a9999ac06bdb36e04..d04d95d4591cb63802bad972d1acdff38e41b2a4 100644
--- a/src/Select/EntryValues.php
+++ b/src/Select/EntryValues.php
@@ -3,60 +3,14 @@
 
 namespace calderawp\CalderaFormsQuery\Select;
 
-class EntryValues extends SelectQueryBuilder implements DoesSelectQueryByValue, DoesSelectQueryByEntryId
+/**
+ * Class EntryValues
+ *
+ * Performs select queries for entry values
+ */
+class EntryValues extends ValueSelectQueryBuilder
 {
 
-
-	/** @inheritdoc */
-	public function queryByEntryId($entryId)
-	{
-		 $this
-			->getSelectQuery()
-			->where()
-			->equals($this->getEntryIdColumn(), $entryId)
-			;
-		 return $this;
-	}
-
-	/** @inheritdoc */
-	public function queryByFieldValue($fieldSlug, $fieldValue, $type = 'equals', $whereOperator = 'AND', $columns = [])
-	{
-		if (! empty($columns)) {
-			$this
-				->getSelectQuery()
-				->setColumns($columns);
-		}
-		switch ($type) {
-			case 'equals':
-				$this
-					->getSelectQuery()
-					->where($whereOperator)
-					->equals($this->getValueColumn(), $fieldValue)
-				;
-				break;
-			case 'notEquals':
-				$this->
-				getSelectQuery()
-					->where($whereOperator)
-					->notEquals($this->getValueColumn(), $fieldValue);
-				break;
-			case 'like':
-				$this->
-				getSelectQuery()
-					->where($whereOperator)
-					->like($this->getValueColumn(), $fieldValue);
-				break;
-		}
-
-		$this->isLike = 'like' === $type ? true : false;
-
-		if (!$this->isLike) {
-			$this->getSelectQuery()->where('AND')->equals('slug', $fieldSlug);
-		}
-
-		return $this;
-	}
-
 	/** @inheritdoc */
 	public function getValueColumn()
 	{
diff --git a/src/Select/SelectQueryBuilder.php b/src/Select/SelectQueryBuilder.php
index b4a50284c73c73c8cbff1d88f103b3cd5e8f6ff2..c774823c99647e82c132873f003adb565ddc10e1 100644
--- a/src/Select/SelectQueryBuilder.php
+++ b/src/Select/SelectQueryBuilder.php
@@ -6,7 +6,7 @@ namespace calderawp\CalderaFormsQuery\Select;
 use calderawp\CalderaFormsQuery\QueryBuilder;
 use NilPortugues\Sql\QueryBuilder\Manipulation\Select;
 
-abstract class SelectQueryBuilder extends QueryBuilder implements DoesSelectQuery
+abstract class SelectQueryBuilder extends QueryBuilder implements DoesSelectQuery, DoesSelectQueryByEntryId
 {
 
 	/**
@@ -24,12 +24,11 @@ abstract class SelectQueryBuilder extends QueryBuilder implements DoesSelectQuer
 		return $this->selectQuery;
 	}
 
-	/**
-	 * @return Select
-	 */
-	protected function getCurrentQuery()
+	/** @inheritdoc */
+	public function queryByEntryId($entryId)
 	{
-		return $this->getSelectQuery();
+		return $this->is($this->getEntryIdColumn(), $entryId);
+
 	}
 
 	/**
@@ -44,6 +43,14 @@ abstract class SelectQueryBuilder extends QueryBuilder implements DoesSelectQuer
 		return $this;
 	}
 
+	/**
+	 * @return Select
+	 */
+	protected function getCurrentQuery()
+	{
+		return $this->getSelectQuery();
+	}
+
 
 	/** @inheritdoc */
 	public function resetQuery()
diff --git a/src/Select/ValueSelectQueryBuilder.php b/src/Select/ValueSelectQueryBuilder.php
new file mode 100644
index 0000000000000000000000000000000000000000..4b6e176ac64398c426633590ef2c1397108aa8a8
--- /dev/null
+++ b/src/Select/ValueSelectQueryBuilder.php
@@ -0,0 +1,47 @@
+<?php
+
+
+namespace calderawp\CalderaFormsQuery\Select;
+
+
+abstract class ValueSelectQueryBuilder extends SelectQueryBuilder implements DoesSelectQueryByValue
+{
+
+	/** @inheritdoc */
+	public function queryByFieldValue($fieldSlug, $fieldValue, $type = 'equals', $whereOperator = 'AND', $columns = [])
+	{
+		if (!empty($columns)) {
+			$this
+				->getSelectQuery()
+				->setColumns($columns);
+		}
+		switch ($type) {
+			case 'equals':
+				$this
+					->getSelectQuery()
+					->where($whereOperator)
+					->equals($this->getValueColumn(), $fieldValue);
+				break;
+			case 'notEquals':
+				$this->
+				getSelectQuery()
+					->where($whereOperator)
+					->notEquals($this->getValueColumn(), $fieldValue);
+				break;
+			case 'like':
+				$this->
+				getSelectQuery()
+					->where($whereOperator)
+					->like($this->getValueColumn(), $fieldValue);
+				break;
+		}
+
+		$this->isLike = 'like' === $type ? true : false;
+
+		if (!$this->isLike) {
+			$this->getSelectQuery()->where('AND')->equals('slug', $fieldSlug);
+		}
+
+		return $this;
+	}
+}