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

Sub - Subconsulta ¿es posible?

Estas en el tema de Sub - Subconsulta ¿es posible? en el foro de Mysql en Foros del Web. Hola Me gustaría saber si es una aberración esto que intento o es que mi sintaxis es mala, la imaginación va por delante de mi ...
  #1 (permalink)  
Antiguo 25/09/2006, 10:18
Avatar de Lord of freaks  
Fecha de Ingreso: octubre-2004
Ubicación: Madrid
Mensajes: 334
Antigüedad: 19 años, 6 meses
Puntos: 2
Sub - Subconsulta ¿es posible?

Hola

Me gustaría saber si es una aberración esto que intento o es que mi sintaxis es mala, la imaginación va por delante de mi SQL. Espero que se entienda, hago una subconstulta SELECT dentro dentro de otro y el resultado lo quiero insertar en otra tabla un saludo.


Código PHP:
INSERT INTO 
forintel3 
(nombre,apellidos,provincia,email
VALUES 
(
    
SELECT 
    nombre
,apellidos,provincia,email 
    FROM 
    user 
    WHERE 
    email 
    NOT IN
(
            
SELECT DISTINCT 
            usuarios
.email  
            FROM user
,usuarios 
            WHERE 
            lower
(usuarios.email) = lower(user.email)
      )

__________________
Una vez un elemental de rayos mató una tribu entera de tritones.

¡¡ El sólo quería darse un baño !!

http://www.frikilandia.com

Neither Fu Nor Fa
  #2 (permalink)  
Antiguo 25/09/2006, 10:45
Avatar de PequeñoMauro  
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años
Puntos: 3
Lo primero que se tendria que saber es si la versión que tienes de Mysql soporta sub-consultas.
La consulta es válida teniendo en una condición una sub-consulta (como repito, dependiendo de la versión).
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."
  #3 (permalink)  
Antiguo 25/09/2006, 10:46
Avatar de Lord of freaks  
Fecha de Ingreso: octubre-2004
Ubicación: Madrid
Mensajes: 334
Antigüedad: 19 años, 6 meses
Puntos: 2
Trabajo sobre la versión 5 no creo que tenga problemas desde la 4.0 no?

Un saludo
__________________
Una vez un elemental de rayos mató una tribu entera de tritones.

¡¡ El sólo quería darse un baño !!

http://www.frikilandia.com

Neither Fu Nor Fa
  #4 (permalink)  
Antiguo 25/09/2006, 13:18
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
Bueno parece estar todo bien excepto por la parte del insert, segun revise la sintaxis del insert con subconsultas deberias quitar el values del INSERT.
Aqui te dejo una descripcion de como deberia ser el INSERT, sacada del manual de referencia de mysql
Cita:
In general, you cannot modify a table and select from the same table in a subquery. For example, this limitation applies to statements of the following forms:

DELETE FROM t WHERE ... (SELECT ... FROM t ...);

UPDATE t ... WHERE col = (SELECT ... FROM t ...);

{INSERT|REPLACE} INTO t (SELECT ... FROM t ...);
saludos, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
  #5 (permalink)  
Antiguo 26/09/2006, 06:34
Avatar de Lord of freaks  
Fecha de Ingreso: octubre-2004
Ubicación: Madrid
Mensajes: 334
Antigüedad: 19 años, 6 meses
Puntos: 2
Gracias Deadlykyo funciono gracias a tu post

Por si ayuda a alguien funcionó con:

Código PHP:
INSERT INTO 
forintel3 
(nombre,apellidos,provincia,email

(
    
SELECT 
    nombre
,apellidos,provincia,email 
    FROM 
    user 
    WHERE 
    email 
    NOT IN
(
            
SELECT DISTINCT 
            usuarios
.email  
            FROM user
,usuarios 
            WHERE 
            lower
(usuarios.email) = lower(user.email)
      )

__________________
Una vez un elemental de rayos mató una tribu entera de tritones.

¡¡ El sólo quería darse un baño !!

http://www.frikilandia.com

Neither Fu Nor Fa
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 13:18.