Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Error al momento de agrupar

Estas en el tema de Error al momento de agrupar en el foro de Bases de Datos General en Foros del Web. Hola buen dia tengo un problema con una BD de Access 2000 esta es la consulta Tengo una Tabla llamada Pedidoproducto; con sus respectivos campos ...
  #1 (permalink)  
Antiguo 16/07/2012, 17:20
 
Fecha de Ingreso: julio-2012
Mensajes: 9
Antigüedad: 11 años, 9 meses
Puntos: 0
Error al momento de agrupar

Hola buen dia tengo un problema con una BD de Access 2000

esta es la consulta

Tengo una Tabla llamada Pedidoproducto; con sus respectivos campos los cuales son los siguientes ------>

N° DE REQUISICION
FOLIO
CANTIDAD
NOMBRE DEL PRODUCTO
MARCA
CATEGORIA
OBSERVACIONES
PRECIO UNITARIO
TOTAL
BANDERA

SELECT [N° DE REQUISICION], FOLIO, CANTIDAD, [NOMBRE DEL PRODUCTO], MARCA, CATEGORIA, OBSERVACIONES, [PRECIO UNITARIO], TOTAL, BANDERA
FROM PEDIDOPRODUCTO
GROUP BY [N° DE REQUISICION];


esta es mi consulta, pero al momento de ejecutarla manda un error el cual es :

Ha intentado ejecutar una consulta que no incluye la expresion especificada Folio como parte de agregado

A que creen que se deba el error?
  #2 (permalink)  
Antiguo 16/07/2012, 18:43
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error al momento de agrupar

Cita:
A que creen que se deba el error?
A que salvo MySQL, todos los demás DBMS exigen que todos los campos del SELECT que no estén afectados por funciones agregadas, estén en el GROUP BY. Y no los estás poniendo.
El sistema te irá pidiendo uno a uno todas las columnas hasta completarlo, poerque no tienes funciones agregadas en ese SELECT.

Pero acá la duda es ¿por qué los estás agrupando?, si no estás haciendo ningún cálculo...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 16/07/2012 a las 18:55
  #3 (permalink)  
Antiguo 16/07/2012, 19:38
 
Fecha de Ingreso: julio-2012
Mensajes: 9
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Error al momento de agrupar

Entonces como quedaría por que no se como, o ms bien no te entendi.
  #4 (permalink)  
Antiguo 16/07/2012, 19:44
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error al momento de agrupar

En pocas palabras: ¿Por qué estás usando GROUP BY?
En el contexto de tu consulta, no se ve la necesidad.
¿Que supones que vas a conseguir con ese GROUP BY?
Cita:
, o ms bien no te entendi.
Es una pregunta medio simple.. ¿Cuánto conoces de SQL?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 16/07/2012, 20:06
 
Fecha de Ingreso: julio-2012
Mensajes: 9
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Error al momento de agrupar

En esta consulta

SELECT [N° DE REQUISICION], FOLIO, CANTIDAD, [NOMBRE DEL PRODUCTO], MARCA, CATEGORIA, OBSERVACIONES, [PRECIO UNITARIO], TOTAL, BANDERA
FROM PEDIDOPRODUCTO
GROUP BY [N° DE REQUISICION];

pretendo mediante un adodc mostrarlo en un Datagrid en VB 6.0

pero realizando la consulta en Access me mandaba ese error ya que el numero de en la tabla PEDIDO_PRODUCTO iba a agrupar los datos de cada Nº de requisicion pues al momento de guardar estos datos existia la probabilidad de que en cada pedido de producto se iban a pedir mas de una vez el mismo producto en diferentes pedidos de producto


asi que para eso es que usaba el Group by

para AGRUPAR los numeros de cotizaciones repetidas y solamente mostrarlas. y Ya

de SQL tengo 6 meses aprendiendo de el y 5 meses utilizando en un proyecto de Visual Basic 6.0 Usando como SGDB Access 2003.
  #6 (permalink)  
Antiguo 16/07/2012, 20:21
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error al momento de agrupar

No te funcionará si agrupas sobre un sólo campo de los que pones en el SELECT. Y la presencia de la columna "Total", pude complicar el uso de DISTINCT, pero de todos modos deberías probarlo:
Código SQL:
Ver original
  1. SELECT DISTINCT [N° DE REQUISICION], FOLIO, CANTIDAD, [NOMBRE DEL PRODUCTO], MARCA, CATEGORIA, OBSERVACIONES, [PRECIO UNITARIO], TOTAL, BANDERA
  2. FROM PEDIDOPRODUCTO
  3. GROUP BY [N° DE REQUISICION];
Es posible que sea mejor usar un JOIN con otras tablas base, pero sin conocer más sobre la estructura de las relaciones y las tablas, no hay mucho por donde resolverlo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 16/07/2012, 21:06
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error al momento de agrupar

En referencia a tu MP, insisto con lo que dije:
Cita:
sin conocer más sobre la estructura de las relaciones y las tablas, no hay mucho por donde resolverlo.
Publica la estructura y/o relaciones de esa tabla para ver si se puede diseñar un JOIN que pueda resolver el problema.

En principio, el SQL estándar debería funcionar, pero si no sucede es por limitaciones del Access. A fin de cuenta Access no es un DBMS.

¿Probaste el DISTINCT (ver link)?

Tal vez te sirva leer el manual on-line de Access: GROUP BY (ver link), donde aclara lo mismo que te digo:
Cita:
Todos los campos de la lista de campos SELECT deben estar incluidos en la cláusula GROUP BY o estar incluidos como argumentos de una función de agregado de SQL.
Prueba ponerlos todos.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 16/07/2012 a las 21:15
  #8 (permalink)  
Antiguo 16/07/2012, 21:31
 
Fecha de Ingreso: julio-2012
Mensajes: 9
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Error al momento de agrupar

aun poniendo todos los campos, no agrupa lo que yo quiero


la auda de access me dice que con el Transform

este el mensaje que me manda


No introdujo una función de agregado en la instrucción TRANSFORM.
  #9 (permalink)  
Antiguo 16/07/2012, 21:32
 
Fecha de Ingreso: julio-2012
Mensajes: 9
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Error al momento de agrupar

Eso sali por que abri la DB con el acess 2010
  #10 (permalink)  
Antiguo 16/07/2012, 22:03
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error al momento de agrupar

Aparentemente quieres hacer un tipo de reporte, pero la consulta tal y como la quieres hacer es imposible de ejecutar porque no respeta las restricciones del SQL. Pero sin conocer más sobre la estructura de las relaciones y las tablas, no hay mucho por donde ayudarte a resolverlo, porque no puedo ver hacia donde te diriges.
El listado de campos a mi no me dice nada, sin entender qué representa cada dato.
Trata de ponerte en nuestro lugar: No sabemos nada de tu sistema, y sin saber qué debe decir el reporte, y de dónde toma los datos, sólo podemos aportarte generalidades, que evidentemente no aplican al problema.
Postea detalles más claros de estructura, relaciones y si es posible una muestra genérica de los datos contenidos en esa tabla (algunos registros).
Tal vez con eso podamos avanzar.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #11 (permalink)  
Antiguo 24/07/2012, 13:22
 
Fecha de Ingreso: julio-2012
Mensajes: 9
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Error al momento de agrupar

Respecto a este tema lo resolvi en realidad lo que queria era mostrar el NUMERO DE COTIZACION y que al momento de darle clik me mostrara los registros que estaban relacionados con ellos pero gracias por su ayuda.. espero y me sigan ayudando en cualquier problema.
  #12 (permalink)  
Antiguo 22/08/2012, 12:38
 
Fecha de Ingreso: agosto-2012
Mensajes: 1
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Error al momento de agrupar

Cita:
Iniciado por wayko Ver Mensaje
Respecto a este tema lo resolvi en realidad lo que queria era mostrar el NUMERO DE COTIZACION y que al momento de darle clik me mostrara los registros que estaban relacionados con ellos pero gracias por su ayuda.. espero y me sigan ayudando en cualquier problema.
wayko,

eso es exactamente lo que estoy intentando hacer. Me podrías comentar como lo resolviste?
Muchas Gracias

Etiquetas: agrupacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:47.