Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/01/2008, 15:17
Avatar de JuanKa
JuanKa
 
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 8 meses
Puntos: 1
Mostrar registros unicos(distinct) aunque se dupliquen

Buenas tardes a todos.

Quisiera saber como puede obtener registros no repetidos aplicando distinct, aca les explico mejor.

En una tabla cesta tengo estos datos

codi_artic| id_color| id_talla| cantidad

10..............5.......................3......... ...2
10..............5.......................5......... ...4
10..............5.......................6......... ...4
10..............5.......................9......... ...2
10..............8.......................3......... ...2
10..............8.......................5......... ...4
10..............8.......................6......... ...4
10..............8.......................9......... ...2

Como ustedes veran hay varias filas que tienen el mismo codigo codi_arti (10) con id_color(5 y 8)
Yo solamene necesito obtener una unica fila aplicando distint, es decir,

codi_artic| id_color
10..............5
10..............8

Usando php ontengo solamente 1 fila
Pero mi problema radica que tanto el codi_artic como el id color son variables que recogo de un formulario y la consulta lo hago bajo estas varibles, es decir,

Código PHP:
$SQL_colores_grabados "SELECT distinct id_color, codi_artic
                          FROM cesta  
                          WHERE codi_artic = $var_id_prenda AND
 id_color = $var_id_color"
;             

$colores_grabados=$bd->bbdd_query($SQL_colores_grabados);

echo 
"Grabados : ".$bd->bbdd_num($colores_grabados). 
Y cuando imprimo el echo me sale solo 1 resultado.

Como se puede realizar esto de tal manera poder obtener esas dos filas.

Pero que pasa si en la tabla cesta el codi_artic es el mismo(10) pero las id_prendas(5 y 8), el cliente despues pueda añadir un color mas o dos colores, es decir en vez de 5 y 8 ahora se añadirian las prendas 9 y 13 en total serian 5, 8, 9 y 13.

Estuve buscando por google y foros, y lei que dentro de la consulta se debe concatenar con un while o un for (Esto nunca lo he hecho). Ha ver si alguien me pudiera ayudar con esto.

Gracias y saludos a todos