Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/06/2004, 01:55
OpcioWeb
 
Fecha de Ingreso: mayo-2004
Mensajes: 7
Antigüedad: 20 años, 8 meses
Puntos: 0
Como hago esta consulta!!??

Wenas compañeros! Ante todo deciros que me encanta vuestro foro y que aprendo mucho navegando por el

El motivo de mi post es que llevo 2 dias dandole weltas a como hacer una consulta en mysql pero no doy con ella. A ver si me se explicar...

Tengo una tabla articulos:

ID_ART
CodArt
Descripcion
....

Y otra tabla ventas:

ID_VEN
ID_CLI
CodVen
...

Como la relacion entre articulos y ventas es 'n' a 'n', logicamente utilizo una tabla intermedia artven, en la cual tengo estos campos entre otros:

ID_VEN
ID_ART
...

Entonces, si por ejemplo la venta 1 tiene los articulos 1,2 y 3, la tabla artven tendria algo como esto:

ID_VEN-ID_ART
____________
1-1
1-2
1-3

Espero que hasta aqui me sigais
Pues bien, al sacar los articulos de esta venta 1, voy a la tabla artven y saco todos aquellos articulos que tengan el ID_VEN=1. Esta consulta es facil y la tengo hecha, no os preocupeis que no soy tan malo jejeje

El problema viene cuando estoy modificando la venta y quiero añadir mas articulos. Para ello uso un combobox que me lista todos los articulos de la tabla articulos que no esten ya en la tabla artven. Hice esta consulta:

select articulos.* from articulos left join artven on artven.ID_ART=articulos.ID_ART where artven.ID_ART IS NULL order by articulos.Modelo

Y no me lo hace bien... Por que? pues porque esta select me saca los articulos que estan en articulos y que no estan en artven. El problema radica en que no discrimina el ID_VEN, con lo cual si seguimos con el ejemplo anterior, y queremos ahora añadir articulos a una nueva venta 2, en el combobox ya no me da la posibilidad de añadir los articulos 1,2 ni 3 cuando deberia ser asi, ya que es otra venta distinta

Por ello hice esta otra consulta añadiendo esto al where:

select articulos.* from articulos left join artven on artven.ID_ART=articulos.ID_ART where artven.ID_VEN=1 and artven.ID_ART IS NULL order by articulos.Modelo

Logicamente el ID_VEN de la consulta no es siempre 1, es una variable php que recoge el valor ID_VEN. Pero no funciona, no me lista ningun articulo, alguien sabe que hago mal???

PD: perdonad por el tocho de post, pero queria explicarlo bien, espero que se haya entendido y me ayudeis. GRACIAS!

Última edición por OpcioWeb; 03/06/2004 a las 01:58