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卸载环境查看是否已安装MySQL卸载mysql服务查看是否...
目录数据类型数据类型分类数值类型以TINYINT认识整型族有符号...
目录表的约束空属性非空约束(NOT NULL Constraint)默认值定...
目录函数时间日期函数:字符串函数数学函数其他函数 函数 时间...
目录使用C语言连接库的安装C APImysql_initmysql_real_conne...
目录用户用户管理查询所有用户查看当前用户查看当前连接数创...