Jump to content
Fórum Script Brasil
  • 0

Group By


Carlos Rocha

Question

Olá pessoal, estou usando a clausula group by no sql server 2000

com o codigo abaixo, e ta dando erro, ue será?

<%

strSQl = "SELECT * FROM cifras where autor='" & Request.QueryString("autor") & "' group by autor"

Set Rs_cifras2 = server.createobject("ADODB.Recordset")

Rs_cifras2.Open strSQl,Conn , 3, 3

total= Rs_cifras2.recordcount

linha = "4" ' Numero de imagens por linha

%>

O erro é:

Tipo de erro:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)

[Microsoft][ODBC SQL Server Driver][sql Server]Column 'cifras.id' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

/host/viveasp/portal/clube/cifras_conteudo_con_autor_musica.asp, line 29

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0
Guest Mike Gabriel Almeida Lopes

É o seguinte, o group by depende dos registros que você quer apresentar, como * ele só agrupa se você por na cláusula group by todos os campos e não só o campo autor. Por isso é melhor você definir bem o que tem retornar na sua consulta para evitar erros e todos os campos que estejam fora de funções de agrupamento tem que estar no group by.

exemplo:

select nome, cpf from cliente group by nome,cpf

Espero ter ajudado.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...