/**
  * @param AbstractQueryBuilder $query
  * @return string
  */
 public function compileDelete(AbstractQueryBuilder $query)
 {
     $stmt = "DELETE FROM {$query->getTable()} ";
     $stmt .= $this->compileWheres($query->getWheres());
     $stmt .= !is_null($query->getGroupBy()) ? $this->compileGroupBy($query->getGroupBy()) : "";
     $stmt .= !is_null($query->getOrderBy()) ? $this->compileOrderBy($query->getOrderBy()) : "";
     $stmt .= !is_null($query->getLimit()) ? "LIMIT " . $query->getLimit() . " " : "";
     $stmt .= !is_null($query->getOffset()) ? "OFFSET " . $query->getOffset() : "";
     return trim($stmt) . ';';
 }
 /**
  * @param AbstractQueryBuilder $query
  * @return mixed
  */
 public function compileDelete(AbstractQueryBuilder $query)
 {
     $stmt = "DELETE FROM {$query->getTable()} ";
     $stmt .= $this->compileWheres($query->getWheres())[0];
     $stmt .= !is_null($query->getGroupBy()) ? $this->compileGroupBy($query->getGroupBy()) : "";
     $stmt .= !is_null($query->getOrderBy()) ? $this->compileOrderBy($query->getOrderBy()) : "";
     $stmt .= !is_null($query->getLimit()) ? "LIMIT " . $query->getLimit() . " " : "";
     $stmt .= !is_null($query->getOffset()) ? "OFFSET " . $query->getOffset() : "";
     $bindings = $this->compileWheres($query->getWheres())[1];
     $stmt = trim($stmt) . ';';
     var_dump($stmt);
     var_dump($bindings);
     $sql[0] = $stmt;
     $sql[1] = $bindings;
     return $sql;
 }