SELECT string_agg(col, ',') as cols SELECT) a 这样做会得到如下结果 product_cd AS product_cd,product_name AS product_name 但是,如果我想忽略值名称product_name,而只想像这样返回字符串形式的其余列值,该怎么
我正在尝试获取标记行的列表,并将它们作为CSV添加到列中。我认为使用string_agg使用子查询比较合适。eventstags下面是一个多对多的表,将标签与它们的事件关联起来。(SELECT string_agg(name, ',') FROM tags WHERE tags.id IN (SELECT eventstags.tags_id WHERE eventstags.events_id= events.id)) AS tags
这似乎只返回
我的数据库中有一个表,其中包含一列NewLanguage(varchar).I将新语言插入到表中,我希望选择表中的行并将它们分配给由',‘拆分的字符串变量。我尝试选择代码中的语言。In an example NewLanguage
c++我想有一个字符串作为"C,c++,java“。我该怎么做呢?谢谢。
我试图在INT列中使用STRING_AGG函数。并获得隐式类型转换警告。我认为这会影响我的查询性能。我怎么才能避免这种情况?以下是查询: STRING_AGG(ES.SomeIntID, '#') AS Something GROUP BY OtherID我尝试将SomeIntID值显式转换为INT和NVARCHAR(12),但没有改进。我认为这种转换也增加了我的WorkFile/W
我正在尝试string_agg a列,同时对列进行排序,并且只显示唯一的值。考虑下面的演示。是否存在语法问题,或者我所使用的方法根本不可能做到这一点?SELECT STRING_AGG(DISTINCT foo.a::TEXT,',' ORDER BY foo.a DESC) SELECT 2
) AS fo
在一个列的值匹配的情况下,我想:1.将数据聚合到其他列中,仅在两个值之间存在差异的情况下。2.如果值相同,则取值Name MiddleName Surname Age Ryan David Smith 29姓氏在两行中都是Smith,所以不需要聚合,只想在一行中填充Smith。
年龄不同,因此希望将这两行的年龄聚