estoy trabajando con php y necesito hacer un select dentro de otro, por ahi lei k no se puede, pero si alguien sabe ojala me lo diga, ademas queria saber como bloquear tablas en mysql (algo asi como el lock, unlock)...
Gracias.-
| |||
como hacer un select dentro de un select en Mysql estoy trabajando con php y necesito hacer un select dentro de otro, por ahi lei k no se puede, pero si alguien sabe ojala me lo diga, ademas queria saber como bloquear tablas en mysql (algo asi como el lock, unlock)... Gracias.-
__________________ ___ |
| ||||
MySQL no te deja hacer subselects y por otro lado si buscas eso de lock en este mismo foro... ya se pregunto yo lo vi y si no www.mysql.com Saludos |
| |||
Bueno .. Mysql hasta 3.x no soporta sub-selects .. pero si que en su manual indican como se debe hacer en Mysql usando LEFT JOIN http://www.mysql.com/doc/en/ANSI_diff_Sub-selects.html Con Mysql 4 (q ya está en fase "alfa") se podrán hacer las sub-consultas clásicas. Un saludo, |
| |||
a ver si me pueden ayudar, casi todos los subselects son con cosas relacionadas como esto tengo 2 tablas CREATE TABLE cliente ( Cod_Cli smallint(6) unsigned NOT NULL auto_increment, Nom_Cli varchar(25) NOT NULL, Usr_Name_Cli varchar(10) NOT NULL, Mail_Cli varchar(25), Dir_Cli varchar(25), Ciudad_Cli varchar(15), Pais_Cli varchar(15), Fono_Cli varchar(15) NOT NULL, Fax_Cli varchar(15), PRIMARY KEY (Cod_Cli), UNIQUE Nom_Cli (Nom_Cli) ); --------------------------------------------------------------------- CREATE TABLE nave ( Cod_Nave smallint(6) unsigned DEFAULT '0' NOT NULL, Nom_Nave varchar(25) NOT NULL, Ban_Nave varchar(15) NOT NULL, PRIMARY KEY (Cod_Nave, Nom_Nave) ); --------------------------------------------------------------------- El codigo de la Nave corresponde al Codigo del Cliente, entonces, por ej. para saber las naves de un Cliente de codigo (Cod_Cli )12345, es solo saber k naves tienen 12345 como cod_nave, entonces para saber todas las naves de todos los clientes yo deberia haber hecho algo asi Cita: select * from cliente, nave where cod_cli = (select Cod_nave from nave) esop.. gracias
__________________ ___ |
| |||
Bueno, si entendí bien lo que tu necesitas es comparar los códigos de las naves con los de los clientes y pues yo trabajo los queries en MySQL cuando se me presenta validaciones como en este caso lo escribiría así; Cita: también utilizando el IN puedes hacerlo, quedaría algo así :SELECT cl.*, n.* FROM cliente cl, nave n WHERE cl.Cod_Cli = n.Cod_nave Cita: Pruébalo para ver si te sirve y si no pues a buscar otra forma.SELECT * FROM cliente, nave WHERE Cod_Cli IN (SELECT Cod_nave FROM nave) Y para bloquear las tablas uso esto: Código PHP:
__________________ UNIX: AIX Linux: RHEL | CentOS Personal: OS X Última edición por Livin; 12/02/2003 a las 18:25 |
| |||
Respuesta: como hacer un select dentro de un select en Mysql Por favor ayudenme. Les explico: El tema va sobre equipos y partidos de baloncesto Tengo 2 tablas (calendario_nba y equipo_nba) - calendario_nba: (id, local, visitante, fecha) - equipo_nba: (id, nombre, ciudad) Los campos 'local' y 'visitante' de la tabla `calendario_nba` hacen referencia al campo 'id' de la tabla `equipo_nba` Lo que quiero es hacer un SELECT de la tabla `calendario_nba` pero en cada registro lo que quiero es obtener el 'nombre' y 'ciudad' de cada 'local' y 'visitante' Es muy basico lo que quiero y aunque no se si me he explicado espero lo entiendan. Gracias |
| |||
Respuesta: como hacer un select dentro de un select en Mysql Prueba este: SELECT l.nombre AS LOCAL , l.ciudad AS ciudad_local, v.nombre AS visitante, v.ciudad AS ciudad_visitante, c.fecha FROM ( equipo_nba l, equipo_nba v ) INNER JOIN calendario_nba c ON l.id = c.local AND v.id = c.visitante POR CIERTO: te has metido en un hilo antiguo que nada tiene que ver con lo que quieres. En estos casos debes abrir un hilo nuevo. Última edición por jurena; 21/08/2008 a las 15:21 |
| |||
Respuesta: como hacer un select dentro de un select en Mysql Muchisimas gracias!! Te lo agradezco de veras, me has salvado de un apuro. Lo habia intentado todo. Siento no haber planteado el problema en el hilo correcto, pero esque ya no sabia por donde tirar Muchas gracias de nuevo |
| ||||
Respuesta: como hacer un select dentro de un select en Mysql No se permite revivir mensajes viejos y por favor, realiza tus consultas aparte. Cerrado.
__________________ NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL |