Página 1 de 1

CONSULTA EJERCICIO 3.1 LECCIÓN 20

NotaPublicado: Mié Ene 20, 2016 9:46 pm
por Johalondoro
Buenas tardes!

Estoy trabajando en los ejercicios del último capítulo del curso, el número 3.1. lo pude realizar sin añadir el nombre de los equipos locales y visitantes tal como muestra la respuesta el curso. El problema es que cuando trato de añadirlos el resultado me da el siguiente error: "La sentencia SQL no ha superado el filtro de seguridad. Verifique la sintaxis, debe empezar por SELECT para realizar consultas, o por DESC para describir tablas. Si esto ya se cumple entonces la sentencia no está permitida".


Código que estoy usando para obtener el resultado sin nombre de los equipos:
select Q.ID_QUINIELA, J.ID_JORNADA, E.RESULTADO, P.PRONOSTICO, if(E.RESULTADO = P.PRONOSTICO, "Si", "No") as "ACIERTO"
from QUINIELAS as Q, EVENTOS as E, PRONOSTICOS as P, JORNADAS as J
where Q.ID_JORNADA = J.ID_JORNADA and E.ID_JORNADA = J.ID_JORNADA and Q.ID_QUINIELA = P.ID_QUINIELA and E.ID_EVENTO = P.ID_EVENTO and Q.ID_QUINIELA = 6

Código que estoy usando para tratar de agregar los nombres de los equipos Locales y Visitantes:
select Q.ID_QUINIELA, J.ID_JORNADA, E.RESULTADO, P.PRONOSTICO, V.EQUIPO, L.EQUIPO, if(E.RESULTADO = P.PRONOSTICO, "Si", "No") as "ACIERTO"
from QUINIELAS as Q, EVENTOS as E, PRONOSTICOS as P, JORNADAS as J, EQUIPOS as V, EQUIPOS as L
where Q.ID_JORNADA = J.ID_JORNADA and E.ID_JORNADA = J.ID_JORNADA and Q.ID_QUINIELA = P.ID_QUINIELA and E.ID_EVENTO = P.ID_EVENTO and E.VISITANTE = V.ID_EQUIPO and E.LOCAL = L.ID_EQUIPO and Q.ID_QUINIELA = 6

Re: CONSULTA EJERCICIO 3.1 LECCIÓN 20

NotaPublicado: Vie Ene 22, 2016 8:07 pm
por Pere
Hola Johalondoro

Hay un filtro de seguridad que no deja realizar consultas con mas de cinco tablas.

Para el ejercio que estas desarrollando no necesitas usar seis tablas, puede hacarlo sin usar la tabla JORNADAS, he modificado minimamente tu solución tal que así:

Código: Seleccionar todo

select Q
.ID_QUINIELA, 
       Q
.ID_JORNADA, 
       E
.RESULTADO, 
       P
.PRONOSTICO, 
       V
.EQUIPO, 
       L
.EQUIPO, 
       if
(E.RESULTADO = P.PRONOSTICO, "Si", "No") as "ACIERTO"
  from QUINIELAS as Q, 
       EVENTOS as E
, 
       PRONOSTICOS as P
, 
       EQUIPOS as V
, 
       EQUIPOS as L 
 where E
.ID_JORNADA = Q.ID_JORNADA 
   and Q
.ID_QUINIELA = P.ID_QUINIELA 
   and E
.ID_EVENTO = P.ID_EVENTO 
   and E
.VISITANTE = V.ID_EQUIPO 
   and E
.LOCAL = L.ID_EQUIPO 
   and Q
.ID_QUINIELA = 6


espero te sirva.

gracias por particiar.

Re: CONSULTA EJERCICIO 3.1 LECCIÓN 20

NotaPublicado: Sab Ene 23, 2016 9:12 pm
por Johalondoro
Muchas gracias por responder! me sirve muchísimo! muy útil este curso, en realidad comencé sin tener idea de SQL y ya puse un poco a prueba mis conocimientos con Oracle y con personas que lo manejan y pude desarrollar consultas en casi su mismo nivel, en realidad lo que aprendí me sirvió muchísimo.