跨 PDO 驱动兼容 GROUP_CONCAT?
Posted
技术标签:
【中文标题】跨 PDO 驱动兼容 GROUP_CONCAT?【英文标题】:Cross PDO driver compatible GROUP_CONCAT? 【发布时间】:2011-11-25 16:33:08 【问题描述】:在主要 PDO 驱动程序中是否有有效的替代 GROUP_CONCAT
的方法?
【问题讨论】:
【参考方案1】:鉴于这个 mysql:
select group_concat(c separator ',') from t
您可以在 PostgreSQL 中执行此操作:
select array_to_string(array_agg(c), ',') from t
或者这个在 SQLite 中:
select group_concat(c, ',') from t
不过我不知道 SQL Server。
参考资料:
MySQLgroup_concat
PostgreSQL array_agg
PostgreSQL array_to_string
SQLite group_concat
【讨论】:
太棒了!我可以在我的数据库驱动程序包装类上实现每个变体。这是一个开源项目,所以如果需要,我会让其他人实现 mssql 版本。这些天我不太倾向于使用 mssql @Lea:您可能想对 PostgreSQL 版本进行版本检查,我提供的版本在 9.0 中工作,如果您需要支持 8,请告诉我,我会看看我能做什么.以上是关于跨 PDO 驱动兼容 GROUP_CONCAT?的主要内容,如果未能解决你的问题,请参考以下文章