2013-08-05 62 views
1

我想聯盟的createQuery與Symfony2的

$query = $em->createQuery(
      'SELECT id, name, beginDate, endDate FROM SmartguideEntityBundle:Promotion1 UNION SELECT id, name, beginDate, endDate FROM SmartguideEntityBundle:Promotion2' 
     ); 

但結果是

Error: Expected end of string, got 'SELECT' 

我怎樣才能解決這個問題

+0

可能重複(HTTP://計算器.com/questions/22453104/symfony-createquery-with-union) – Moonchild

回答

1

試圖定義一個別名,如

SELECT p1.id, 
p1.name, 
p1.beginDate, 
p1.endDate 
FROM SmartguideEntityBundle:Promotion1 p1 
UNION 
SELECT p2.id, 
p2.name, 
p2.beginDate, 
p2.endDate 
FROM SmartguideEntityBundle:Promotion2 p2 

編輯:如果你看看這個鏈接,TI展示瞭如何使用執行RAW SQL查詢SQL query with UNION in Doctrine Symfony

+0

我得到了消息「錯誤:字符串的期望結束,使用別名時得到了'UNION' – hoangvu68

+0

你怎麼解決這個問題?我有同樣的問題。 – Sid

0
$stmt = $em->getConnection(); 
$result = $stmt->executeQuery(-your sql-)->fetchAll(); 
[與工會的Symfony的createQuery]的