2011-03-25 90 views
0

我有一個查詢,我加入了幾個表。 2個表包含相同的字段名,所以我想選擇1個表作爲另一個名稱。我知道如何做到這一點,但似乎當我查詢一個字段作爲另一個名稱,它只選擇該字段。Zend Framework - 選擇查詢問題

我的問題是:我如何選擇表中的所有字段,以及特定的字段作爲另一個名稱?

這是我有我的代碼在這一刻:

$select->from('one'); 
    $select->join('two', 'one.item_id = two.id', array('item_name' => 'name')); 
    $select->join('three', 'one.item_id = three.item_id'); 

所以我想選擇所有從兩個,並命名字段名AS ITEM_NAME。

在此先感謝!

+0

你應該這樣做它應該怎樣做:選擇您需要的每個字段。你熟悉這個話題「不要選擇*'」,我想。 – 2011-03-25 12:05:06

+0

那麼,有* LOT *的字段,我必須選擇他們所有,所以我希望有一個更簡單的方法:(你能解釋爲什麼選擇*是不好的做法?謝謝。 – priktop 2011-03-25 12:08:50

回答

1

我還沒有試過,但我認爲你能做到這一點:

$select->join('two', 'one.item_id = two.id', array('item_name' => 'name', '*')); 
+0

謝謝!明白了:) – priktop 2011-03-25 12:56:47

+0

我看到你編輯了我的答案,沒問題,但是如果有人感興趣:-),那麼這兩個符號('name作爲item_name''或''item_name'=>'name'')都可以工作。 – Htbaa 2011-03-25 13:51:51