跨服务器,标准SQL生成逗号分隔列表

Jus*_*808 5 mysql sql sql-server sqlite postgresql

我一直在寻找但找不到任何东西.是否有符合SQL标准的方法来生成类似 TSQL的输出?我想在sqlite,mysql,postgresql或sql server上运行一个单独的查询.这样的事情甚至可能吗?

Chr*_*ers 2

据我了解您的问题,您正在寻找一种跨数据库的方式将列中的值聚合到逗号分隔的列表中。据我所知,没有标准聚合可以做到这一点(在 PostgreSQL 上,在添加一些新聚合之前,我正在为此编写自己的聚合)。

您可以做的最好的事情就是选择列表并在应用程序中处理它,但这就是当您必须编写跨数据库可移植的代码时会发生的情况。

您将遇到的第二个问题是,虽然可以向其中一些数据库添加扩展来解决此问题,但不可能对所有数据库添加扩展。

所以不,不可能。您的选择是:坚持使用一两个支持自定义聚合和填充的数据库,在一个数据库上构建基于 SP 的接口,或者仅选择列表并在应用程序中处理它。