Mysql
 sql >> база данни >  >> RDS >> Mysql

LEFT JOIN в ZF2 с помощта на TableGateway

Добавяне към отговора на @samsonasik и разглеждане на проблемите в неговите коментари. Няма да можете да извлечете обединените стойности от това, което се връща от този израз. Това изявление връща моделния обект, който няма да има съединените редове. Ще трябва да го изпълните като SQL на ниво, което ще го подготви като необработен SQL и ще ви върне всеки получен ред като масив, а не като обект:

$sqlSelect = $this->tableGateway->getSql()->select();
$sqlSelect->columns(array('column_name_yourtable'));
$sqlSelect->join('othertable', 'othertable.id = yourtable.id', array('column_name_othertable'), 'left');

$statement = $this->tableGateway->getSql()->prepareStatementForSqlObject($sqlSelect);
$resultSet = $statement->execute();
return $resultSet;

//then in your controller or view:

foreach($resultSet as $row){
    print_r($row['column_name_yourtable']);
    print_r($row['column_name_othertable']);
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Подобрете SQL INSERT заявка, за да избегнете sql инжекции

  2. MySQL Connector/C++ OS X 10.9 Mavericks и XCODE 5.0.2

  3. mysql име на поле от променлива

  4. PHP password_verify не работи срещу база данни

  5. Как мога да видя конкретната стойност на sql_mode?