/ / cómo hacer una unión interna en zend 2 - join, zend-framework2

cómo hacer una unión interna en zend 2 - join, zend-framework2

Estoy tratando de hacer una consulta slq a continuación en zend2 pero no sé cómo hacerlo. ¿Alguien tiene solución para esto?

SELECT Customer_info.Name, d1.Value, d2.value , Customer_info.Status
FROM Customer_info
INNER JOIN Dataman as d1
ON d1.module="Customerinfo" and Customer_info.Status=d1.Id  and d1.data_field = "Status"
INNER JOIN Dataman as d2
ON d2.module="Customerinfo" and Customer_info.Vip_level=d2.Id  and d2.data_field = "Vip_level";

Respuestas

2 para la respuesta № 1

He convertido su consulta a la declaración de selección ZF2. Por favor marque a continuación:

// collect the Sql instance.<br />
$sql = new Sql($this->dbSql);

$select = $sql->select();
$select->from("Customer_info")
->columns(array(
"Name",
"Status"
))
->join(
array("t2" => "Dataman"),
new ZendDbSqlExpression("t2.module = "Customerinfo" and Customer_info.Status=t2.Id  and t2.data_field = "Status""),
array(
"Value"
),
$select::JOIN_INNER
)
->join(
array("t3" => "Dataman"),
new ZendDbSqlExpression(" t3.module="Customerinfo" and Customer_info.Vip_level=t3.Id  and t3.data_field = "Vip_level" "),
array(
"value"
),
$select::JOIN_INNER
);

$resultSet = $this->tableGateway->selectWith($select);

return $resultSet;

Gracias :)