Foros del Web » Programando para Internet » PHP »

Realizar consulta sql de otra consulta sql

Estas en el tema de Realizar consulta sql de otra consulta sql en el foro de PHP en Foros del Web. Hola Necesito hacer una consulta sql en la que debo guardar 'x' valores (serán los datos obtenidos al realizar un filtro). Una vez realizada esta ...
  #1 (permalink)  
Antiguo 01/10/2012, 02:46
 
Fecha de Ingreso: junio-2004
Mensajes: 57
Antigüedad: 20 años, 5 meses
Puntos: 0
Realizar consulta sql de otra consulta sql

Hola

Necesito hacer una consulta sql en la que debo guardar 'x' valores (serán los datos obtenidos al realizar un filtro).
Una vez realizada esta consulta, necesito hacer sobre ella distintas consultas para obtener distintos valores pero no veo como hacerlo.

(He de decir que no quiero realizarlo con subconsultas sql sino que quiero guardar la consulta principal (la del filtro) en una variable y sobre ella, realizar el resto de consultas restantes).

Pongo un ejemplo aclaratorio con lo que he intentado mejor.

Código:
$sql_query = "SELECT id AS id, nombre AS nombre, estudios AS estudios, fecha_reg AS fecha FROM usuarios";
$sql_inicial = & $db->getAll ( $sql_query, DB_FETCHMODE_ASSOC );

//Ahora sobre los datos obtenidos en la anterior consulta necesitaria mostrar otros datos, por ejemplo;

$sql_query2  = "Select id FROM $sql_inicial WHERE estudios= LICENCIADO";
$valor_1 = & $db->getAll ( $sql_query2, DB_FETCHMODE_ASSOC );
//y de esta forma obtener un array con la relacion de nombre que cumplen la condición

$sql_query3  = "Select nombre FROM $sql_inicial WHERE estudios= LICENCIADO";
$valor_2 = & $db->getAll ( $sql_query3, DB_FETCHMODE_ASSOC );
//y de esta forma obtener un array con la relacion de nombre que cumplen la condición
Gracias por la ayuda

Última edición por Zhukov; 01/10/2012 a las 02:55
  #2 (permalink)  
Antiguo 01/10/2012, 05:25
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Realizar consulta sql de otra consulta sql

Hay muchas formas de hacerlo des de crear una tabla temporal a crear una array php con el resultado y por programación filtrarlo, genrando nuevos arrays con las nuevas selecciones...

Tambien puedes hacerlo con sql con subconsultas (Sbc)

SELEC .... sbc.campos....
FROM (SELECT ...campos... FROM tablas WHERE ...) as Sbc
WHERE Sbc.campo....

pero claro ahi estarias ejecutanto la consulta cada vez....

O integrando las restriciones

SELECT ...campos...
FROM tabla
WHERE ... primera restricion...
AND ...segunda restrición...
...
AND ... restriccion N;

Yo me inclinaria por la solución de los arrays....

mysql_fetch_array

Luego recorres ese array y con condicionales creas las sub-selecciones....

array_push
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Etiquetas: sql, variables, usuarios
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 22:18.