Symfony Propel Pager-向其发送自定义MySQL查询的正确方法是什么?

前端之家收集整理的这篇文章主要介绍了Symfony Propel Pager-向其发送自定义MySQL查询的正确方法是什么? 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这是我需要运行的查询

SELECT REPLACE(REPLACE(SUBSTRING_INDEX(LOWER(table.url),‘/’,3),‘www.’,”),‘http://’,”) AS domain FROM table GROUP BY domain

但是我很难将这样的查询作为标准传递给Propel传呼机.我希望这能奏效.

$criteria->addSelectColumn(‘SUBSTRING_INDEX(‘ . TablePeer::URL . ‘,\’/\’,3) AS table’);

但不幸的是,事实并非如此.有什么想法可以使用标准方法通过吗?

更新

对于那些感兴趣的人,这就是最终的结果,谢谢!

$criteria->addAsColumn(‘domain’,‘SUBSTRING_INDEX(‘ . TablePeer::URL . ‘,3)’);
$criteria->addGroupByColumn(‘domain’);

最佳答案
您需要在您的条件对象中使用Criteria :: CUSTOM和addAsColumn的某种组合-您显然还需要使用doSelectRs(< = 1.2)或doSelectStmt(> = 1.3).我不确定确切的公式是什么,但这可能会为您提供正确的方向(请注意,该链接适用于1.2,因此请根据1.3或1.4的需要更新sysntaxt / api).

http://stereointeractive.com/blog/2009/07/21/propel-criteria-on-custom-columns-with-addascolumn/

猜你在找的MySQL相关文章