diff --git a/src/Illuminate/Database/Query/Grammars/Grammar.php b/src/Illuminate/Database/Query/Grammars/Grammar.php index d3efd735e598..5fe0931a35bb 100755 --- a/src/Illuminate/Database/Query/Grammars/Grammar.php +++ b/src/Illuminate/Database/Query/Grammars/Grammar.php @@ -667,16 +667,7 @@ public function compileDelete(Builder $query) $where = is_array($query->wheres) ? $this->compileWheres($query) : ''; - if (isset($query->joins)) - { - $joins = ' '.$this->compileJoins($query, $query->joins); - } - else - { - $joins = ''; - } - - return trim("delete $table from {$table}{$joins} $where"); + return trim("delete from $table ".$where); } /** diff --git a/tests/Database/DatabaseQueryBuilderTest.php b/tests/Database/DatabaseQueryBuilderTest.php index 6e27e077d341..e2ebd7e890aa 100755 --- a/tests/Database/DatabaseQueryBuilderTest.php +++ b/tests/Database/DatabaseQueryBuilderTest.php @@ -936,29 +936,16 @@ public function testUpdateMethodRespectsRaw() public function testDeleteMethod() { $builder = $this->getBuilder(); - $builder->getConnection()->shouldReceive('delete')->once()->with('delete "users" from "users" where "email" = ?', array('foo'))->andReturn(1); + $builder->getConnection()->shouldReceive('delete')->once()->with('delete from "users" where "email" = ?', array('foo'))->andReturn(1); $result = $builder->from('users')->where('email', '=', 'foo')->delete(); $this->assertEquals(1, $result); $builder = $this->getBuilder(); - $builder->getConnection()->shouldReceive('delete')->once()->with('delete "users" from "users" where "id" = ?', array(1))->andReturn(1); + $builder->getConnection()->shouldReceive('delete')->once()->with('delete from "users" where "id" = ?', array(1))->andReturn(1); $result = $builder->from('users')->delete(1); $this->assertEquals(1, $result); } - public function testDeleteWithJoinMethod() - { - $builder = $this->getBuilder(); - $builder->getConnection()->shouldReceive('delete')->once()->with('delete "users" from "users" inner join "contacts" on "users"."id" = "contacts"."id" where "email" = ?', array('foo'))->andReturn(1); - $result = $builder->from('users')->join('contacts', 'users.id', '=', 'contacts.id')->where('email', '=', 'foo')->delete(); - $this->assertEquals(1, $result); - - $builder = $this->getBuilder(); - $builder->getConnection()->shouldReceive('delete')->once()->with('delete "users" from "users" inner join "contacts" on "users"."id" = "contacts"."id" where "id" = ?', array(1))->andReturn(1); - $result = $builder->from('users')->join('contacts', 'users.id', '=', 'contacts.id')->delete(1); - $this->assertEquals(1, $result); - } - public function testTruncateMethod() {