PostgreSQL array_agg命令
发布时间:2020-12-13 16:48:24 所属栏目:百科 来源:网络整理
导读:表’动物’: animal_name animal_typeTom CatJerry MouseKermit Frog 查询: SELECT array_to_string(array_agg(animal_name),';') animal_names,array_to_string(array_agg(animal_type),';') animal_typesFROM animals; 预期结果: Tom;Jerry;Kerimt,Cat;
表’动物’:
animal_name animal_type Tom Cat Jerry Mouse Kermit Frog 查询: SELECT array_to_string(array_agg(animal_name),';') animal_names,array_to_string(array_agg(animal_type),';') animal_types FROM animals; 预期结果: Tom;Jerry;Kerimt,Cat;Mouse;Frog OR Tom;Kerimt;Jerry,Cat;Frog;Mouse 我可以确保在第一个聚合函数中的顺序将始终与第二个相同。 Tom;Jerry;Kermit,Frog;Mouse,Cat
如果你是一个PostgreSQL版本< 9.0然后: From:
http://www.postgresql.org/docs/8.4/static/functions-aggregate.html
所以在你的情况下你会写: SELECT array_to_string(array_agg(animal_name),';') animal_types FROM (SELECT animal_name,animal_type FROM animals) AS x; array_agg的输入将是无序的,但是在两个列中都是相同的。如果你喜欢,你可以添加一个ORDER BY子句到子查询。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |