Humm Postado Julho 21, 2011 Denunciar Share Postado Julho 21, 2011 (editado) salve!vou tentar explicar de forma que de a entender..tenho uma consulta que me retorna o seguinte:[pedido] - [forma] 0001 - dinheiro 0001 - cartao 0002 - dinheiro 0003 - deposito 0003 - dinheiro gostaria de concatenar os valores da coluna forma agrupados pela coluna pedido de forma que aparecesse assim no resultado da consulta: [pedido] - [forma] 0001 - dinheiro, cartao 0002 - dinheiro 0003 - deposito, dinheiroacho que so vai rolar com criando uma funcao e usando os comandos whilemas já tentei e n to consegueindo fazeralguma luz? Editado Julho 22, 2011 por Humm Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Humm Postado Julho 22, 2011 Autor Denunciar Share Postado Julho 22, 2011 consegui, criei uma funcao..Public Function Concatenar(Origem As String, CampoChave As String, _ CampoConcatenar As String, Chave As Integer) As String Dim db As Database Dim rs As Recordset Dim strSQL, strRetorno As String strSQL = "SELECT " & CampoChave & ", " & CampoConcatenar & " FROM " & Origem & _ " WHERE ([" & CampoChave & "] = " & Chave & ")" Set db = CurrentDb() Set rs = db.OpenRecordset(strSQL, dbOpenSnapshot) strRetorno = "" While Not rs.EOF strRetorno = strRetorno & rs(CampoConcatenar) rs.MoveNext If Not rs.EOF Then strRetorno = strRetorno & ", " End If Wend Concatenar = strRetorno rs.Close End Function funciona da seguinte maneira.. antes de mais nada, deve ser criada uma consulta que lhe retone os dados dessa maneira: [pedido] - [forma] 0001 - dinheiro 0001 - cartao 0002 - dinheiro 0003 - deposito 0003 - dinheiro ela vai servir de base para a funcao, que fiz de forma generica.. para poder usar futuramente com varias consultas da necessidade que eu tiver.. então, crie uma nova consulta.. ai a sintaxe da função: Concatenar(Origem, CampoChave, CampoConcatenar, Chave) Origem = Tabela ou Consulta de Origem dos dados.. no meu caso, Consulta_Teste CampoChave = Nome do campo indexado o qual ordena os registros.. no meu caso, COD_PED CampoConcatenar = Nome do campo a ser concatenado em si mesmo.. no meu caso, FORMA Chave = Valor do CampoChave, ou seja, aqui é o critério de agrupamento.. no meu caso, 1 debug.print concatenar("CONS_TESTE", "COD_PED", "FORMA", 1) dinheiro, cartao Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Dwry Stos Postado Junho 7, 2018 Denunciar Share Postado Junho 7, 2018 (editado) Boa tarde, EU estou começando a aprender usar o sql mas pra falar a verdade não manjo de nada, eu estou tentando resolver um problema mas não sei como fazer, eu tenho a sequinte view: USE [SGC] GO SELECT [ID] ,[Numero_RC] ,[Area_CAR] ,[Data_Req] ,[Ano] ,[Cod_Material] ,[Item] ,[Qtde] ,[UM] ,[Val_Unit] ,[Val_Total] ,[matdf_id_ctry] ,[Status] ,[Id_descri] ,[Seq] ,[Descricao] FROM [dbo].[vwGEM] GO O que acontece é que vários registros repetem em 2 linhas ou mais devido as informações do campo descrição estar divididos em uma linha ou mais, o que determina a ordem da continuação da descrição seriam os campos ID_descri e seq, oque eu queria fazer não se se é isso concatenar os valores e no campo descrição ele juntar para que fique uma descrição completa. Grato Editado Junho 7, 2018 por Dwry Stos Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Humm
salve!
vou tentar explicar de forma que de a entender..
tenho uma consulta que me retorna o seguinte:
gostaria de concatenar os valores da coluna forma agrupados pela coluna pedido de forma que aparecesse assim no resultado da consulta:acho que so vai rolar com criando uma funcao e usando os comandos while
mas já tentei e n to consegueindo fazer
alguma luz?
Editado por HummLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.