2017-12-27 328 views
1

任何人都可以幫我要改變從ZEND格式Yii2格式下面的查詢,MySQL查詢格式更改得到Zend TO Yii2

$select = $db->select(); 
$select->from(array('u' => 'user'), array('user_id', 'name', 'dob')) 
     ->join(array('ua' => 'User_Address'), 'ua.user_id = u.user_id', array()) 
     ->join(array('a' => 'Address'), 'a.address_id = ua.address_id', array('address_id', 'street', 'city', 'state', 'country')); 

由於提前,

回答

1

你可以使用如:

$rows = (new \yii\db\Query()) 
    -select(['u.user_id', 'u.name', 'u.dob', Address.street, Address.city , Address.state, Address.country ]) 
    ->from('user u') 
    ->join('INNER JOIN', 'User_Address', 'User_Address.user_id = u.id') 
    ->join('INNER JOIN', 'Address', 'Address.user_id = User_Address.address_id AND ')  
    ->all(); 

多見於http://www.yiiframework.com/doc-2.0/guide-db-query-builder.html

+0

謝謝@scaisEdge,但我需要的是,我具備的條件,當其夫lfilled將決定選擇語句的參數(基本上,從db中獲取的列需要在滿足某些條件時動態添加),這就是爲什麼我在Zend中爲每個表提供不同列的原因是否存在點到點轉換? – GThamizh

+1

@GThamizh你原來的問題在哪裏? scaisEdge當前的答案正確地將Zend查詢生成器轉換爲Yii2的查詢生成器。 – lubosdz