Jump to content
Robson Barros da Rocha

Agrupamento retornando todos as colunas

Recommended Posts

Bom dia povo. Tenho um problema, e não uma dúvida. Eu executo no SQL Server esta query para agrupar os resultados cujo tenha o código do comprovante repetido:

SELECT * FROM SHOP_Pedidos WHERE show='1' GROUP BY comprovante

As colunas são:

ID = Se preenche automaticamente

comprovante = Recebe o código do comprovante

productName = Nome do produto

productValue = Valor do produto

dateSent = Data que o produto foi enviado

show = Enviado (1) e não enviado (0)

 

A query que mostrei acima, não retorna dados porque aparece esse erro: "Column 'SHOP_Pedidos.id' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause." Certo, então aí que está o problema. Vendo o erro, eu troquei a * pela coluna comprovante, e resultou, mas a consulta só retorna a coluna comprovante (por conta do SELECT estar especificando somente ele. 

 

A dúvida é: Tem como recuperar todos as colunas, assim como mysql?

Share this post


Link to post
Share on other sites

Não precisa do agrupamento pelo que entendi.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By david2007
      Endpointer Framework é um Framework PHP para construção de APIs REST com Programação Procedural.
       
      http://endpointer.com
       
      Endpointer Framework é Código Aberto sob a licença MIT
       

    • By MarcosAntonio
      boa tarde. 
      Estou precisando de um Select que retorne uma soma que ao chegar a determinado valor ela reinicie e continue fazendo sucessivamente
       select   pedido,   volume,   limite,   SUM(volume) over (order by pedido ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) saldo   from pedidos  group by pedido o select está retornando assim porém quero que toda vez que chegue ou passe do limite resete o saldo, por exemplo parar no 100 que é o limite e começar um novo saldo
      pedido     volume    limite    saldo  1             70            100        70  2             10            100        80  3             20            100        100  4             50            100        150  5             30            100        180  
      preciso que ele soma o volume enquanto o saldo seja <= que o "limite", quando passar pare de somar e comece outra soma começando do 0, como no exemplo abaixo.
      pedido    volume    limite    saldo  1             70            100        70  2             10            100        80  3             20            100        100  4             50            100        50  5             30            100        80  
    • By andreluis78
      Olá a todos.
      Criei um procedimento para verificar se um usuário está cadastrado no banco de dados.
      Utilizo Firebird como BD e componentes Zeos para acessar o banco.
      Resolvi criar uma query em tempo de execução para fazer a verificação. Não dá nenhum erro, porém, quando digito o nome do usuário no Edit e clico
      no botão que executa o procedimento, ele dá ''usuário inexistente'', mesmo se o nome do usuário estiver cadastrado no banco.
       
      Segue o código:
       
      procedure Tfrm_login.SpeedButton1Click(Sender: TObject); var Qry : TZQuery; begin   Qry:=TZQuery.Create(nil);   Qry.Connection := dm_dados.ZConnection1;  //componente de conexão   Qry.SQL.Add('select codigo, nome, acessar, user, pass from clientes');   Qry.Open;   if Qry.Locate('USER',Edit1.Text,[]) then   begin     ShowMessage('usuário cadastrado');   end   else   begin     ShowMessage('usuário inexistente');     Edit1.SetFocus;   end;   FreeAndNil(Qry); end;  
      Se alguém puder ajudar agradeço desde já.
      Obrigado
    • By diegosrg
      Olá pessoal!
      Preciso de um help por favor.
      Seguinte, tenho uma base de dados abaixo e preciso incluir uma coluna com os valores acumulado do mês independente do produto.Base atual:
      YEARMONTH / PRODUTO/ VALOR 202001 /ABC / 123,00 202001 /DEF / 234,00 202002 /ABC / 289,00 202002 /GHU / 222,00  
      Com a nova coluna ficaria assim:
      YEARMONTH / PRODUTO/ VALOR / VALOR ACUMULADO 202001 /ABC / 123,00 / 357,00 202001 /DEF / 234,00 / 357,00 202002 /ABC / 289,00 / 511 202002 /GHU / 222,00 / 511  
      Alguém tem alguma dica?!
      Desde já agradeço
    • By FabianoSouza
      Pessoal, por que isso não funciona no SQL?
      SET @sql = 'SELECT ' SET @sql = @sql + @status + ' = meuCampo FROM minhaTab' EXEC(@sql) SELECT @status Preciso passar o resultado para a variável @status.
      Como faço??
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.