Ver Mensaje Individual
  #5 (permalink)  
Antiguo 06/07/2011, 15:05
Avatar de verinchi
verinchi
 
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Consulta que me esta volviendo locoo

Creo comprender cual es tu problema.

Cuando decís
Cita:
Mi "gran" problema es que no soy capaz de realizar una consulta que me diga la id del producto COLOR VERDE y TALLA MEDIANA....
Estas refiriendote a un ejemplo... supongo que el talle y el color llegaran de un parámetro de alguna aplicación... que no estás trabajando directamente con la base de datos.

Pero supongamos que si.

Lo que no debes perder de vista es LO QUE QUERÉS OBTENER EN EL RESULTADO.

Esto es:
Cita:
SELECT * FROM atributos WHERE atri_id=1 AND valor=verde AND atri_id=2 AND valor=mediana
Estas pidiendo todos los registros de color verde, talla mediana con el id de atributo 1 mmmm creo que no sería el objetivo de tu consulta.

Yo haría:

SELECT PROD_ID, VALOR FROM ATRIBUTOS WHERE (ATRI_ID=1 AND VALOR='VERDE') AND (ATRI_ID=2 AND VALOR='MEDIANA')


De esta manera, el codigo del producto te va a aparecer más de una vez, porque... segun la estructura de tu tabla, tenes un registro para indicar que es verde, y otro para que es mediano... y así por todos los atributos.

Te recomendaria, si está a tu alcance, normalizar los datos para tener:

-Una tabla productos
-Una tabla por cada atributo.
-Una relacional de productos/atributos

Por lo menos.

Esero haber sido de ayuda
__________________
Why can't we not be sober?
www.partitorium.com.ar

Última edición por verinchi; 06/07/2011 a las 15:07 Razón: Copie y pegué mal para las citas, había quedado confuso