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

Consulta devuelve 3 veces el mismo resultado.

Estas en el tema de Consulta devuelve 3 veces el mismo resultado. en el foro de Mysql en Foros del Web. Tengo esta consulta: Código: SELECT prendaselec.ID,prendaselec.IDTipo,prendaselec.IDMarca,prendaselec.IDFamilia,tipo.Descripcion AS Desc_Tipo,tipoprenda.Descripcion AS Desc_Familia,prendaselec.Modelo,marcas.Descripcion AS Desc_Marca,prendaselec.Minimo,prendaselec.Maximo,prendaselec.Funciones,prendaselec.Caracteristicas FROM prendaselec INNER JOIN tipo ON prendaselec.IDTipo=tipo.ID LEFT JOIN marcas ON prendaselec.IDMarca=marcas.ID LEFT ...
  #1 (permalink)  
Antiguo 22/01/2010, 16:47
Avatar de Nachzeher  
Fecha de Ingreso: enero-2003
Mensajes: 249
Antigüedad: 21 años, 2 meses
Puntos: 1
Consulta devuelve 3 veces el mismo resultado.

Tengo esta consulta:

Código:

SELECT prendaselec.ID,prendaselec.IDTipo,prendaselec.IDMarca,prendaselec.IDFamilia,tipo.Descripcion AS Desc_Tipo,tipoprenda.Descripcion AS Desc_Familia,prendaselec.Modelo,marcas.Descripcion AS Desc_Marca,prendaselec.Minimo,prendaselec.Maximo,prendaselec.Funciones,prendaselec.Caracteristicas FROM prendaselec INNER JOIN tipo ON prendaselec.IDTipo=tipo.ID LEFT JOIN marcas ON prendaselec.IDMarca=marcas.ID LEFT JOIN tipoprenda ON prendaselec.IDFamilia=tipoprenda.ID WHERE PrendaSelec.Sucursal=101 AND Tipo.Sucursal=101 AND Marcas.Sucursal=101 AND TipoPrenda.Sucursal=101 AND Prendaselec.IDTipo=6 ORDER BY prendaselec.IDTipo,tipo.Descripcion,marcas.Descripcion

Y me devuelve al el mismo registro, pero 3 veces. Así:

Código:
0	6	0	203	DOCUMENTOS	MAQUINARIA	MotoCube	LG	50	100	Todas	Ningunas
0	6	0	203	DOCUMENTOS	MAQUINARIA	MotoCube	LG	50	100	Todas	Ningunas
0	6	0	203	DOCUMENTOS	MAQUINARIA	MotoCube	LG	50	100	Todas	Ningunas


Estoy moficiando un sistema nuevo, y creo que no ocupamos los datos 3
veces, como podría ajustar la consulta para que no me tire 3 veces el registro?


Saludos!
  #2 (permalink)  
Antiguo 22/01/2010, 20:28
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Consulta devuelve 3 veces el mismo resultado.

Código SQL:
Ver original
  1. SELECT prendaselec.ID,prendaselec.IDTipo,prendaselec.IDMarca,prendaselec.IDFamilia,
  2. tipo.Descripcion AS Desc_Tipo,
  3. tipoprenda.Descripcion AS Desc_Familia,
  4. prendaselec.Modelo,marcas.Descripcion AS Desc_Marca,
  5. prendaselec.Minimo,prendaselec.Maximo,
  6. prendaselec.Funciones,
  7. prendaselec.Caracteristicas FROM
  8. prendaselec INNER JOIN tipo
  9. ON prendaselec.IDTipo=tipo.ID
  10. LEFT JOIN marcas
  11. ON prendaselec.IDMarca=marcas.ID
  12. LEFT JOIN tipoprenda
  13. ON prendaselec.IDFamilia=tipoprenda.ID
  14. WHERE PrendaSelec.Sucursal=101 AND
  15. Tipo.Sucursal=101 AND Marcas.Sucursal=101
  16. AND TipoPrenda.Sucursal=101 AND
  17. Prendaselec.IDTipo=6
  18. GROUP BY prendaselec.ID
  19. ORDER BY prendaselec.IDTipo,tipo.Descripcion,marcas.Descripcion

asì?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 23/01/2010, 10:50
Avatar de Nachzeher  
Fecha de Ingreso: enero-2003
Mensajes: 249
Antigüedad: 21 años, 2 meses
Puntos: 1
Respuesta: Consulta devuelve 3 veces el mismo resultado.

Ya vi el problema viejo..


Hay ceros en marcas.ID y en tipoprenda.ID

Entonces.. no encuentra ni la marca ni la familia del producto.. cree que son registros distintos
y me tira los 3.. .


Estoy conociendo este sistema.. tengo que corregirle estos detalles..
estoy mejorando la función que graba los datos para que no tire ceros en todas partes..


Gracias por la sugerencia!


Doy por solucionado el tema.. Saludos!

Etiquetas: resultados
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 11:47.