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

Excluir a un vendedor

Estas en el tema de Excluir a un vendedor en el foro de Mysql en Foros del Web. Hola! Tengo la siguiente tabla tabla ventas id nombreVendedor ciudad_venta cantidad 01 ismael A 100 02 jose A 200 03 ismael B 300 04 ismael ...
  #1 (permalink)  
Antiguo 02/02/2012, 02:13
Avatar de Erikzamith  
Fecha de Ingreso: septiembre-2003
Ubicación: Suecia
Mensajes: 75
Antigüedad: 21 años, 2 meses
Puntos: 0
Excluir a un vendedor

Hola!

Tengo la siguiente tabla tabla
ventas
id nombreVendedor ciudad_venta cantidad
01 ismael A 100
02 jose A 200
03 ismael B 300
04 ismael C 100
05 jose C 200
06 jose D 200

Quiero los nombre de los vendedores que no han vendido en la ciudad B
en este caso seria Jose.

Como puedo hacer?
__________________
La madre de la invención es la necesidad.
  #2 (permalink)  
Antiguo 02/02/2012, 02:37
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Excluir a un vendedor

Código MySQL:
Ver original
  1. SELECT nombreVendedor FROM ventas WHERE ciudad_venta="B"

Vendedores que SI han vendido en la ciudad B

Luego

Código MySQL:
Ver original
  1. SELECT nombreVendedor
  2. FROM ventas
  3. WHERE nombreVendedor  NOT IN (...Vendedores que SI han vendido en la ciudad B...)


Código MySQL:
Ver original
  1. SELECT nombreVendedor
  2. FROM ventas
  3. WHERE nombreVendedor  NOT IN (SELECT nombreVendedor  
  4.                        FROM ventas
  5.                        WHERE ciudad_venta="B")

Listo!!!!
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 02/02/2012, 03:13
Avatar de Erikzamith  
Fecha de Ingreso: septiembre-2003
Ubicación: Suecia
Mensajes: 75
Antigüedad: 21 años, 2 meses
Puntos: 0
Respuesta: Excluir a un vendedor

Gracias, muchas gracias!
Funciona a la perfeccion.
__________________
La madre de la invención es la necesidad.
  #4 (permalink)  
Antiguo 02/02/2012, 06:39
Avatar de Ribon  
Fecha de Ingreso: septiembre-2010
Ubicación: El firmamento
Mensajes: 487
Antigüedad: 14 años, 2 meses
Puntos: 91
Respuesta: Excluir a un vendedor

aunque también funciona y mucho mejor

Código MySQL:
Ver original
  1. SELECT nombreVendedor FROM ventas WHERE ciudad_venta <> "B"
  2.  
  3. --o
  4.  
  5. SELECT nombreVendedor FROM ventas WHERE ciudad_venta NOT IN ("B")

Sin subqueries que vamos, va a tener que hacerla cada vez que quiera compararla o.o xD!

Saludos.
__________________
Utilice el Highlight para mostrar código, mis ojos se lo agradecerán :)
qué es esto? :O -> http://i48.tinypic.com/5x3kzs.png
Ya sabes :)
  #5 (permalink)  
Antiguo 02/02/2012, 08:03
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Excluir a un vendedor

Puesssss tienes razon Ribon...

Mi respuesta seria mas adecuada con la estructura optima para el caso...

TablaVendedores
idVendedor
Nombre

TablaCiudades
idCiudad
Nombre

TablaVentas
idVenta
idVendedor
idCiudad
cantidad

Si todo esta en la misma tabla como es el caso tu respuesta es mucho mejor y rapida, la primera claro, no hace falta el NOT IN para solo un valor....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: excluir, tabla
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 12:19.