We use Zend_Db_Select's assemble or _toString to get the native sqlfor the model query. For collection class, it is also recommendedto use this way:
$sqlStruct['sql'] =$collection->getSelectSql(true);
<code>
$con =Mage::getSingleton('core/resource')->getConnection('core_write');
<wbr><wbr><wbr><wbr><wbr><wbr><wbr>$query =$this->getRequest()->getParam('sql');<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$queryParams =$this->getRequest()->getParam('params');<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$result = $con->query($query, $queryParams);<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$items = array();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$headers = array();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>while ($row = $result->fetch(PDO::FETCH_ASSOC)){<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$items[] = $row;<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>if (empty($headers)) {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$headers = array_keys($row);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>}<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>}<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block = new Mage_Core_Block_Template();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->setTemplate('debug/arrayformat.phtml');<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('title', 'SQL Select');<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('headers', $headers);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('items', $items);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('query', $query);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>echo $block->toHtml();<br><br> </code><br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
$sqlStruct['sql'] =$collection->getSelectSql(true);
<code>
$con =Mage::getSingleton('core/resource')->getConnection('core_write');
<wbr><wbr><wbr><wbr><wbr><wbr><wbr>$query =$this->getRequest()->getParam('sql');<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$queryParams =$this->getRequest()->getParam('params');<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$result = $con->query($query, $queryParams);<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$items = array();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$headers = array();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>while ($row = $result->fetch(PDO::FETCH_ASSOC)){<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$items[] = $row;<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>if (empty($headers)) {<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$headers = array_keys($row);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>}<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>}<br><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block = new Mage_Core_Block_Template();<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->setTemplate('debug/arrayformat.phtml');<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('title', 'SQL Select');<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('headers', $headers);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('items', $items);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>$block->assign('query', $query);<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>echo $block->toHtml();<br><br> </code><br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>