A função string_agg () e array_agg () funcionando é o mesmo, exceto que string_agg () é a função agregada que retorna o resultado como tipo de string enquanto a função Array_agg () retorna o tipo de matriz como resultados.
Este artigo é um guia completo para explicar a função agregada string_agg () no PostgreSQL. Você estará testemunhando vários exemplos da função string_agg () no PostgreSQL com uma explicação detalhada. A sintaxe a seguir ajudará você a obter o entendimento básico de usar a função String agg () no PostgreSQL:
String_agg (valor, delimitador)Na sintaxe acima,
O string_agg () também leva a ordem por cláusula na declaração. É opcional se você deseja que a saída esteja em uma ordem específica, você pode usar a cláusula de ordem por ordem com a função string_agg (). Abaixo está um exemplo de uso da cláusula da Ordem By na declaração:
String_agg (valor, delimiter [order_by_clause])Você pode adicionar a condição especificada no 'order_by_clause' usando a ordem por função na instrução como essa:
Ordem por Value1 ASC | Desc,…A ordem por função pode ser declarada como em forma ascendente ou descendente na declaração de acordo com o valor (valor1) escrito.
Você também pode usar o grupo por cláusula nas declarações; Diz as linhas que são agrupadas na tabela.
Exemplos de função string_agg () no PostgreSQL:Para usar a função string_agg () nas declarações que você precisa primeiro para criar uma tabela de amostra para exemplos no PostgreSQL. Abaixo está o código para criar uma tabela de amostra no PostgreSQL:
Crie jogadores de mesa (A sintaxe acima criará uma tabela no banco de dados com o nome "jogadores" e colunas como player_name, team_name e player_position. O PostgreSQL fornece a seguinte mensagem:
Para verificar se a tabela é criada com as colunas especificadas, execute a consulta selecionada abaixo:
Selecione * de "jogadores";Agora, insira alguns valores na tabela "jogadores" com o inser no comando:
Insira em "jogadores"Valores ('Shaheen', 'Paquistão', 'Bowler'), ('Sarfaraz', 'Paquistão', 'Keeper Wicket');
Os valores acima são inseridos na tabela "jogadores" usando a inserção e o comando valores nas instruções, e podemos confirmar que, executando a instrução SELECT abaixo:
Selecione * de "jogadores";Os valores que foram especificados na inserção no comando agora são executados com sucesso e podem ser vistos na saída acima.
Gerando valores separados por vírgula usando String_agg () no PostgreSQL:
Para gerar uma lista de valores separados por vírgulas, usaremos a função string_agg () na instrução. Abaixo está a declaração para gerar valores separados por vírgulas:
Selecione "Team_Name", String_agg ("Player_name", ',')Usamos a função string_agg () para separar a coluna "player_name" com vírgulas na instrução SELECT. No primeiro parâmetro do string_agg (), a expressão é definida que queremos separar; No segundo parâmetro, usamos vírgula ',' como delimitador ou separador para separar os valores. Usamos o grupo por comando para dividir as fileiras em relação à coluna "Team_name". A saída para a sintaxe acima é exibida como:
Os valores de "player_name" são concatenados por vírgulas na saída acima e exibidos com o "Team_name".
Separando várias colunas com vírgulas usando string_agg () no postgreSQL:
Podemos usar mais de uma função string_agg () na instrução Single Select. O exemplo abaixo mostra a demonstração disso:
Selecione "Team_Name", String_agg ("Player_name", ','), String_agg ("Player_positon", ',')Eu usei duas funções string_agg () em duas colunas diferentes para concatenar os valores das colunas por vírgula-separadores. A declaração acima mostra os seguintes resultados:
É visível que os valores de duas colunas agora sejam separados por vírgulas e gerados a lista.
Não sabemos os nomes das colunas na saída acima que eles são mencionados como nomes "string_agg" padrão, podemos especificar os nomes de colunas usando como função na instrução acima. Esta é a sintaxe para usar como função e especificação de nomes na coluna:
Selecione "Team_Name", String_agg ("Player_name", ',') como Players_name,Na declaração acima, com a função string_agg (), especifiquei a palavra -chave AS com o nome desejado, exibindo um nome na coluna. Podemos ver na saída abaixo:
As colunas que foram primeiro por padrão nomeadas como "string_agg" agora são nomeadas como "players_name" e "players_positions", respectivamente.
Conclusão:
Aprendemos neste artigo sobre a função string_agg () no PostgreSQL, sua definição, seu uso e implementação. A função string_agg () pode ser usada para gerar valores separados por vírgula com colunas únicas e múltiplas. A palavra -chave AS pode ser usada para exibir os nomes específicos para colunas selecionadas.