1
有一個本地查詢,我想執行的Symfony2的原生MySQL查詢,但我得到一個SQL錯誤,這是原始查詢:問題與Symfony2的
$sql= "SELECT s.id_tariffs_key,s.description,s.voice_rate
FROM tariffs s
JOIN (SELECT MAX(id_tariffs_key) AS id FROM tariffs GROUP BY description) max
ON s.id_tariffs_key = max.id
WHERE s.description like '$letter%' and s.description not like '%-%'";
這是Symfony2的查詢:
$rsm = new ResultSetMapping;
$rsm->addEntityResult('MyBundle:Tariffs', 't');
$query = $this->getEntityManager()->createNativeQuery("SELECT t.id_tariffs_key,t.description,t.voice_rate FROM tariffs
JOIN (SELECT MAX(t.id_tariffs_key) AS id FROM tariffs GROUP BY t.description) max ON id_tariffs_key = max.id
t.description like '?%' and t.description not like '%-%'", $rsm);
$query->setParameter(1, $letter);
當我嘗試加載網頁,它說:
An exception occurred while executing 'SELECT t.id_tariffs_key,t.description,t.voice_rate FROM tariffs
JOIN (SELECT MAX(t.id_tariffs_key) AS id FROM tariffs GROUP BY description) max ON id_tariffs_key = max.id
t.description like '?%' and t.description not like '%-%'' with params [23]:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 't.description like '?%' and t.description not like '%-%'' at line 3
任何幫助,請?
謝謝!