MySQL - Inner join y where

 
Vista:
sin imagen de perfil
Val: 11
Ha aumentado su posición en 3 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Inner join y where

Publicado por lex (5 intervenciones) el 16/05/2018 11:31:49
Hola !
Tengo dos tablas relacionadas:
"programas" y "programas_fechas"
En la primera se generan los programas y en la segunda se definen las fechas con sus características

y tengo la siguiente consulta para intentar listar aquellos programas donde la fecha NO está caducada:

1
2
3
4
5
select distinct(programas.IDPROGRAMA), FECHA_INICIO
from programas
inner join programas_fechas on programas_fechas.IDPROGRAMA=programas.IDPROGRAMA
where
programas_fechas.FECHA_INICIO>'2018-06-16'


Sin embargo me devuelve el registro aunque no cumpla con la condición (lo muestra aunque esté con fecha anterior):

IDPROGRAMA: 41
FECHA_INICIO: 2018-05-27

Está claro que el where no actúa... ¿donde está el error de condepto?

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 250
Plata
Ha aumentado 1 puesto en MySQL (en relación al último mes)
Gráfica de MySQL

Inner join y where

Publicado por leonardo_josue (414 intervenciones) el 16/05/2018 16:19:45
Hola Lex.

Aparentemente no hay nada "malo" en la consulta, pero hay algunas cosas que revisar,

1. ¿De qué tipo de dato es tu campo FECHA_INICIO? puedo suponer que se trata de un campo tipo DATE, pero si fuera el caso de que lo tienes como VARCHAR, ese puede ser un problema.

2. Haz aun un SELECT * con el filtro y muéstranos la salida:

1
2
3
4
5
select *
from programas
inner join programas_fechas on programas_fechas.IDPROGRAMA=programas.IDPROGRAMA
where
programas_fechas.FECHA_INICIO>'2018-06-16'

3. Haz un SELECT * sin el filtro y muéstranos la salida:

1
2
3
select *
from programas
inner join programas_fechas on programas_fechas.IDPROGRAMA=programas.IDPROGRAMA

Ejecuta las consultas directamente en una consola de MySQL y no desde un IDE de desarrollo o con algún lenguaje de programación.

Saludos
Leo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 11
Ha aumentado su posición en 3 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Inner join y where

Publicado por lex (5 intervenciones) el 17/05/2018 09:05:33
Fallo mío.
El campo en la base de datos tenía un espacio y estaba como tipo VARCHAR (fallo en el código de inserción)
Muchas gracias por la ayuda!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar