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

[SOLUCIONADO] Armar subconsultar a partir de dos consultas

Estas en el tema de Armar subconsultar a partir de dos consultas en el foro de Mysql en Foros del Web. Hola, estoy tratando de armar una consulta que incluye una subconsulta pero estoy teniendo problemas para redactar todo. Por el momento tengo las dos partes ...
  #1 (permalink)  
Antiguo 26/06/2014, 09:54
 
Fecha de Ingreso: mayo-2014
Ubicación: La Plata
Mensajes: 18
Antigüedad: 10 años, 6 meses
Puntos: 0
Armar subconsultar a partir de dos consultas

Hola, estoy tratando de armar una consulta que incluye una subconsulta pero estoy teniendo problemas para redactar todo. Por el momento tengo las dos partes que funcionan como deben:

C1:
Código MySQL:
Ver original
  1. SELECT `empresa`, `origen`, `plataforma`, `hora` FROM `terminal`.`viajes`
  2. WHERE (`hora` >= curTime() and `hora` <= DATE_ADD(NOW(),INTERVAL 30 MINUTE))

C2:
Código MySQL:
Ver original
  1. SELECT `empresa`, `origen`, `plataforma`, `hora` FROM `terminal`.`viajes`
  2. WHERE (`fecha` = Date_format(now(), '%W') and `destino` = 'La Plata')

La idea es que priemero se filtre por la C2 y luego por la C1.


Lo habia planteado asi:

Código MySQL:
Ver original
  1. SELECT `empresa`, `origen`, `plataforma`, `hora`
  2. FROM (SELECT `empresa`, `origen`, `plataforma`, `hora`
  3. FROM `terminal`.`viajes` as T1 WHERE (`fecha` = Date_format(now(), '%W') and `destino` = 'La Plata'))
  4. WHERE (`hora` >= curTime() and `hora` <= DATE_ADD(NOW(),INTERVAL 30 MINUTE))

Pero me da error por falta de los Alias y no se bien como solucionarlos, se que van en el FROM pero no me esta saliendo.

Desde ya muchas gracias. Saludos.

Braian

Última edición por gnzsoloyo; 26/06/2014 a las 11:05 Razón: Faltan Highlights de codigo MySQL
  #2 (permalink)  
Antiguo 26/06/2014, 11:09
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Armar subconsultar a partir de dos consultas

Código MySQL:
Ver original
  1.     `empresa`,
  2.     `origen`,
  3.     `plataforma`,
  4.     `hora`
  5.     (SELECT
  6.         `empresa`,
  7.         `origen`,
  8.         `plataforma`,
  9.         `hora`
  10.    FROM `terminal`.`viajes` T1
  11.    WHERE `fecha` = Date_format(now(), '%W')
  12.       AND`destino` = 'La Plata'
  13.    ) T -- Acá te faltaba el ALIAS
  14.     `hora` >= CURTIME()
  15.     AND `hora` <= DATE_ADD(NOW(),INTERVAL 30 MINUTE)
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 27/06/2014, 08:24
 
Fecha de Ingreso: mayo-2014
Ubicación: La Plata
Mensajes: 18
Antigüedad: 10 años, 6 meses
Puntos: 0
Respuesta: Armar subconsultar a partir de dos consultas

Muchas gracias, mirando documentacion en internet nunca usaban las comillas ` y me estaba mariando un poco eso porque me faltaban en un par de lugares y no me daba cuenta. Saludos!

Braian
  #4 (permalink)  
Antiguo 27/06/2014, 08:38
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Armar subconsultar a partir de dos consultas

Los acentos graves (`) se usan en MySQL y algunos otros DBMS especialmente cuando usas como nombres de objetos de BBDD a palabras clave, reservadas o contienen caracters de uso especial (como los aritméticos).
En esos casos son de uso obligatorio. Caso contrario podrías omitirlos sin problema.
Ojo: No confundir con los apóstrofos (') y las comillas ("). Los primeros se usan en MySQL sólo para cadenas de texto, y los segundos para los objetos de base de datos (al igual que el primer caso), y ocasionalmente para cadenas de texto, sólo si el servidor de MySQL está configurado para reconocerlas como tales.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 27/06/2014 a las 08:48

Etiquetas: alias, subconsulta
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:23.