반응형
string_agg()에서 결과를 정렬하는 방법
자리가 있습니다.
CREATE TABLE tblproducts
(
productid integer,
product character varying(20)
)
행과 함께:
INSERT INTO tblproducts(productid, product) VALUES (1, 'CANDID POWDER 50 GM');
INSERT INTO tblproducts(productid, product) VALUES (2, 'SINAREST P SYP 100 ML');
INSERT INTO tblproducts(productid, product) VALUES (3, 'ESOZ D 20 MG CAP');
INSERT INTO tblproducts(productid, product) VALUES (4, 'HHDERM CREAM 10 GM');
INSERT INTO tblproducts(productid, product) VALUES (5, 'CREAM 15 GM');
INSERT INTO tblproducts(productid, product) VALUES (6, 'KZ LOTION 50 ML');
INSERT INTO tblproducts(productid, product) VALUES (7, 'BUDECORT 200 Rotocap');
내가 실행하면string_agg()
에tblproducts
:
SELECT string_agg(product, ' | ') FROM "tblproducts"
다음 결과가 반환됩니다.
CANDID POWDER 50 GM | ESOZ D 20 MG CAP | HHDERM CREAM 10 GM | CREAM 15 GM | KZ LOTION 50 ML | BUDECORT 200 Rotocap
사용할 순서대로 집계된 문자열을 정렬하려면 어떻게 해야 합니까?ORDER BY product
?
저는 Postgre를 사용하고 있습니다.SQL 9.2.4.
postgres 9.0+를 사용하면 다음과 같이 쓸 수 있습니다.
select string_agg(product,' | ' order by product) from "tblproducts"
자세한 내용은 여기.
Microsoft SQL의 경우: "그룹 내" 사용
https://learn.microsoft.com/en-us/sql/t-sql/functions/string-agg-transact-sql?view=sql-server-2017
SELECT
STRING_AGG(prod, '|') WITHIN GROUP (ORDER BY product)
FROM ...
select string_agg(prod,' | ') FROM
(SELECT product as prod FROM tblproducts ORDER BY product )MAIN;
이는 주조 작업에서도 수치적으로 정렬되는 것으로 보입니다.
select string_agg(cast (o.id as varchar),',' order by o.id) from tb_organisation o
inner join tb_country c on o.country_fk = c.id
where c.name ilike '%united%' group by c.id;
언급URL : https://stackoverflow.com/questions/24906826/how-to-sort-the-result-from-string-agg
반응형
'programing' 카테고리의 다른 글
angular-cli 도구의 --base-href 매개 변수와 --deploy-url 매개 변수의 차이점은 무엇입니까? (0) | 2023.05.07 |
---|---|
모든 테이블을 삭제하고 Azure SQL 데이터베이스를 재설정하는 방법 (0) | 2023.05.07 |
이클립스의 패키지 탐색기에서 트리 항목의 글꼴 크기를 구성하려면 어떻게 해야 합니까? (0) | 2023.05.07 |
MongoDB를 사용하여 중첩된 어레이 업데이트 (0) | 2023.05.07 |
대규모 프로젝트를 위한 NodeJS vs Play Framework (0) | 2023.05.07 |