Example #1
0
 public function testGroupByHavingConditions()
 {
     $query = new SelectQuery();
     $query->select(array('id', 'name', 'phone', 'address'))->from('users', 'u')->groupBy('name')->limit(20)->offset(10);
     $query->where('u.name LIKE :name', [':name' => new Bind('name', '%John%')]);
     $query->having()->equal('name', 'John');
     $this->assertQuery($query);
     $this->assertSqlStrings($query, [[new MySQLDriver(), "SELECT id, name, phone, address FROM users AS u WHERE u.name LIKE :name GROUP BY name HAVING name = 'John' LIMIT 20 OFFSET 10"], [new PgSQLDriver(), "SELECT id, name, phone, address FROM users AS u WHERE u.name LIKE :name GROUP BY name HAVING name = 'John' LIMIT 20 OFFSET 10"]]);
 }