2011-12-27 7 views
0

私は、Zend Frameworkの1.11で、次のMySQLクエリを達成しようとしています:のZend FrameworkでのMySQLのクエリで文字列/番号を選択

SELECT [other_columns], 1 AS dontShow FROM deal_merchants; 

私は数1を選択し、それをdontShow別名を与えることに興味を持っています。私は次のコードを実行したときしかし:

$select = $this->select(Zend_Db_Table::SELECT_WITHOUT_FROM_PART); 
$select->setIntegrityCheck(false) 
     ->from('deal_merchants',array('MIN(BidPrice) AS price','USERS_ID','MIN(BidQuotaFrom) AS MinFrom','MAX(BidQuotaTo) AS MaxTo','users.ImageURL','1 AS dontShow')); 

を私は次の例外を取得:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'deal_merchants.1' in 'field list' 

答えて

0

はそれを行う方法を考え出しました。それが最良の方法であるかどうかは分かりませんが、それは機能します。

$select = $this->select(Zend_Db_Table::SELECT_WITHOUT_FROM_PART); 
$select->setIntegrityCheck(false) 
     ->from('deal_merchants',array('MIN(BidPrice) AS price','USERS_ID','MIN(BidQuotaFrom) AS MinFrom','MAX(BidQuotaTo) AS MaxTo','users.ImageURL','(SELECT 1 FROM dual) AS dontShow')); 
0

あなたは配列すなわちにキー/値として列/別名を置くことができます:ここではどのように、誰かがこの上でつまずく場合です

array('price' => 'MIN(BidPrice)', ...) 

キーが別名で、値が照会値です。