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

Subconsulta en MySQL para expertos MySQL

Estas en el tema de Subconsulta en MySQL para expertos MySQL en el foro de Bases de Datos General en Foros del Web. Tengo esta consulta y si la hagogo con Acces, me va muy bien todo, el problema viene, cuando lo hago con MySQL, he leido que ...
  #1 (permalink)  
Antiguo 14/09/2004, 17:39
Avatar de juanmi321  
Fecha de Ingreso: septiembre-2004
Mensajes: 262
Antigüedad: 19 años, 8 meses
Puntos: 1
Exclamación Subconsulta en MySQL para expertos MySQL

Tengo esta consulta y si la hagogo con Acces, me va muy bien todo, el problema viene, cuando lo hago con MySQL, he leido que es por que MySQL no admite consultas, puesto que mi proveedor de hosting es la base de datos que me da y pues noe s actual

La consulta es esta:

SELECT id, pnombre, papellidop, correo FROM afiliado2 WHERE id not in (Select idusuario
FROM prueba
WHERE idevent=1)

Me podrian ayudar para ver la forma en que puedo hacerla en MySQL porfas? Gracias a todos
  #2 (permalink)  
Antiguo 14/09/2004, 18:29
Avatar de orchabel  
Fecha de Ingreso: marzo-2002
Ubicación: Hundido en un rincón...
Mensajes: 401
Antigüedad: 22 años, 2 meses
Puntos: 1
Si... por ahora... en la versión estable de MySQL no se pueden hacer subconsultas. Sin ambargo intenta con esta forma.

SELECT a.id, a.pnombre, a.papellidop, a.correo
FROM afiliado2 as a left join prueba as b on a.id = b.idusuario
WHERE b.idevent=1

Saludos!
__________________
BugHunter II
"si quieres un mañana mejor, piensa en ser mejor para un mañana"
  #3 (permalink)  
Antiguo 15/09/2004, 15:56
Avatar de juanmi321  
Fecha de Ingreso: septiembre-2004
Mensajes: 262
Antigüedad: 19 años, 8 meses
Puntos: 1
Disculpa mi ignorancia :(

Que significa tu a y b

Gracias
  #4 (permalink)  
Antiguo 15/09/2004, 16:19
Avatar de orchabel  
Fecha de Ingreso: marzo-2002
Ubicación: Hundido en un rincón...
Mensajes: 401
Antigüedad: 22 años, 2 meses
Puntos: 1
son alias para distinguir sobre que tabla estoy tomando cada campo
__________________
BugHunter II
"si quieres un mañana mejor, piensa en ser mejor para un mañana"
  #5 (permalink)  
Antiguo 15/09/2004, 16:42
Avatar de juanmi321  
Fecha de Ingreso: septiembre-2004
Mensajes: 262
Antigüedad: 19 años, 8 meses
Puntos: 1
La consulta la realize de esta forma:

SELECT a.id, a.pnombre, a.papellidop, a.correo
FROM afiliado2 as a left join prueba as b on a.id <> b.idusuario
WHERE b.idevent=1

Y pues no me sirve, por queeeeeeeeee, solo le cambie el signo de igual por el de <> puesto que si te fijas haci es mi consulta.

Y no me sale lo que debe de salir y en la otra consulta si sale :(
  #6 (permalink)  
Antiguo 15/09/2004, 17:07
Avatar de orchabel  
Fecha de Ingreso: marzo-2002
Ubicación: Hundido en un rincón...
Mensajes: 401
Antigüedad: 22 años, 2 meses
Puntos: 1
colocale right join a ver que sale
__________________
BugHunter II
"si quieres un mañana mejor, piensa en ser mejor para un mañana"
  #7 (permalink)  
Antiguo 16/09/2004, 00:39
 
Fecha de Ingreso: junio-2004
Ubicación: Castellón, España
Mensajes: 98
Antigüedad: 19 años, 10 meses
Puntos: 0
Creo que lo podrías hacer negando la condición:

SELECT afiliado2.id, afiliado2.pnombre, afiliado2.papellidop, afiliado2.correo
FROM afiliado2 left join prueba on afiliado2.id = prueba.idusuario
WHERE NOT prueba.idevent=1

Con esta consulta se filtran todos los registros de la tabla 'afiliado2' menos los que estén relacionados con la tabla prueba y el campo 'idevent' sea igual a uno.
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 18:23.