Постгрес Гроуп_Цонцат

Postgres Group Concat



У МиСКЛ-у, функција ГРОУП_ЦОНЦАТ је агрегатна функција која спаја вредности из више редова у један стринг. Обично се користи за сажимање више редова у један ред, комбинујући повезане податке.

Међутим, ПостгреСКЛ изворно не подржава функцију гроуп_цонцат() за разлику од МиСКЛ-а. Стога, овај водич истражује како можемо постићи сличну функционалност помоћу функције стринг_агг().

ПостгреСКЛ Стринг_Агг функција

Функција стринг_агг у ПостгреСКЛ-у нам омогућава да повежемо вредности из више редова у један стринг и одвојена је наведеним параметром.







Употреба синтаксе функције је приказана на следећи начин:



СЕЛЕЦТ стринг_агг(име_колоне, граничник)
ФРОМ име_табеле
ГДЈЕ услови
ГРОУП БИ гроупинг_цолумнс;

Следећа синтакса је изражена на следећи начин:



име_колоне – Одређује име колоне чију колону желимо да спојимо.





граничник – Дефинише знак за раздвајање који се користи приликом спајања улазних вредности.

табле_наме – Циљна табела која садржи податке.



груписане_колоне – Одређује колоне које се користе за груписање наведених података.

Пример функције ПостгреСКЛ Стринг_Агг

Узмимо практичнији пример да илуструјемо како функција функционише. Претпоставимо да имамо табелу која садржи информације о ученицима. Табела садржи три колоне: ид, име и предмет.

Ако желимо да повежемо имена ученика који су уписали исти предмет, можемо користити функцију стринг_агг.

СЕЛЕЦТ предмет, стринг_агг ( име, ',' ) АС студенти
ОД ученика
ГРОУП БИ предмет;

Када покренемо дати упит, он би требало да врати скуп резултата са две главне колоне: предмет и ученици. Ученици садрже спојена имена ученика за сваки предмет и одвојена су зарезом.

БЕЛЕШКА : Функција стринг_агг сортира спојене вредности подразумевано. Можете додати ОРДЕР БИ клаузулу унутар функције стринг_агг да бисте одржали оригинални редослед.

То је то! Једноставан и ефикасан метод за постизање сличне функционалности коју обезбеђује функција гроуп_цонцат() у ПостгреСКЛ-у.

Закључак

У овом кратком, али ефикасном водичу, научили смо како да користимо функцију стринг_агг у ПостгреСКЛ-у да бисмо постигли сличну функционалност коју пружа функција гроуп_цонцат() у МиСКЛ-у.