Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-10-2011
galletin galletin is offline
Registrado
NULL
 
Registrado: oct 2011
Posts: 4
Poder: 0
galletin Va por buen camino
Group by - Order by

Buenos días,

tengo una consulta simple:
  • Select Parámetro, Proveedor, sum(Valor)
    From Mediciones
    Where Año = 2011
    And Parámetro = 'x'
    Group by Parámetro, Proveedor
Me devuelve valores en el siguente orden:
  • x, pepe, 5
  • x, luis, 7
  • x, juan, 2
La cuestión es simple, quiero ordenador por el campo "Valor" pero si incluyo una cláusula Order by me obliga a meter ese campo también en el Group by y entonces ya no me suma los valores de cada proveedor.

¿?
Gracias.
Responder Con Cita
  #2  
Antiguo 27-10-2011
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
No te deja porque intentas ordenar por el contenido de Valor, no por la suma. Pon un nombre a las sumas, así:

Código SQL [-]
Select Parámetro, Proveedor, sum(Valor) AS SumaValores
From Mediciones
Where Año = 2011
And Parámetro = 'x'
Group by Parámetro, Proveedor
ORDER BY SumaValores
Debería funcionar.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 27-10-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por galletin Ver Mensaje
Buenos días
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración.
Responder Con Cita
  #4  
Antiguo 27-10-2011
galletin galletin is offline
Registrado
NULL
 
Registrado: oct 2011
Posts: 4
Poder: 0
galletin Va por buen camino
Gracias Nuño,

pero estoy haciendo pruebas en un Access, le pongo el alias "SumaValor" a la función de agregado pero al incluirla en el Order by me pregunta "Introduzca el parámetro SumaValor", es decir, no lo reconoce...
Responder Con Cita
  #5  
Antiguo 27-10-2011
galletin galletin is offline
Registrado
NULL
 
Registrado: oct 2011
Posts: 4
Poder: 0
galletin Va por buen camino
Acabo de probarlo en SQL y funciona perfectamente... es Access el que no reconocer los alias en el Order by

Muchas gracias ;-)

Cita:
Empezado por Ñuño Martínez Ver Mensaje
No te deja porque intentas ordenar por el contenido de Valor, no por la suma. Pon un nombre a las sumas, así:


Código SQL [-]Select Parámetro, Proveedor, sum(Valor) AS SumaValores
From Mediciones
Where Año = 2011
And Parámetro = 'x'
Group by Parámetro, Proveedor
ORDER BY SumaValores



Debería funcionar.
Responder Con Cita
  #6  
Antiguo 27-10-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Prueba con order by 3
El 3 es la posición del dato en el select:
select (1)parametro, (2)proveedor, (3)sum(valor)
Responder Con Cita
  #7  
Antiguo 27-10-2011
galletin galletin is offline
Registrado
NULL
 
Registrado: oct 2011
Posts: 4
Poder: 0
galletin Va por buen camino
Efectivamente Casimiro, con el "Order by 3" funciona también en el Access.

Muchas gracias.

Cita:
Empezado por Casimiro Notevi Ver Mensaje
Prueba con order by 3
El 3 es la posición del dato en el select:
select (1)parametro, (2)proveedor, (3)sum(valor)
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Impresion de group header group footer Manuel Impresión 3 11-11-2007 01:05:23
ORDER BY con GROUP BY y funciones de agregado Cabanyaler MS SQL Server 2 04-08-2006 08:33:07
consultas anidadas: group by dentro otro group by DobleSiete SQL 7 31-01-2005 14:59:31
Group Header, Detail y Footer Group en la misma pagina MarcelRuz Impresión 0 20-04-2004 23:27:14
Order by ...... chutipascal Firebird e Interbase 8 24-06-2003 14:46:21


La franja horaria es GMT +2. Ahora son las 11:48:13.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi