2010-09-02 150 views
0

我嘗試將此查詢轉換爲Criteria(with Propel),但沒有成功。如何將此查詢轉換爲Criteria?

你能幫助我嗎?

SELECT DISTINCT (email) 
FROM user, travail 
WHERE travail.id_user = user.id_user 
AND id_site = "1" 
AND `droits` = "1" 

這是我的標準查詢:

$c = new Criteria(); 
    $c->add(self::DROITS, 1, Criteria::EQUAL); 
    $c->add(TravailPeer::ID_SITE, 1, CRITERIA::EQUAL); 
    $c->setDistinct(self::EMAIL); 

回答

0

如何:

$c = new Criteria(); 
$c->add(UserPeer::DROITS, 1); 
$c->addJoin(UserPeer::ID_USER, TravailPeer::ID_USER); 
$c->add(TravailPeer::ID_SITE, 1); 
$c->clearSelectColumns(); 
$c->addSelectColumn(UserPeer::EMAIL); 
$c->setDistinct(); 

$rs = UserPeer::doSelectRS($c); 
+0

我獲得誤差:錯誤填充用戶對象[包裹:無效結果集柱:2] – bahamut100 2010-09-02 13:01:48

+0

D'哦,最後行應爲:'$ RS = UserPeer :: doSelectRS($ C);' – Raise 2010-09-02 13:11:40

+0

它的工作原理,謝謝:) – bahamut100 2010-09-02 13:17:50

0

嗨,您可以使用推進建設者不僅這一點,但任何SQL的標準翻譯。以下是在線建設者網站之一。

http://propel.jondh.me.uk/