Sentence Error: SELECT, JOIN ON CASE

0
SELECT nombre , p.DetallePrestaciones, o.Salario
from empleados AS e 
inner join ocupaciones as  o 
on o.PkOcupacion=e.FkOcupacion 
inner join prestaciones as p  
on  p.PkPrestaciones= (CASE MONTH(CURRENT_DATE())
WHEN 1 THEN  1
WHEN 7 THEN  2
WHEN 12 THEN  3
ELSE 0
END CASE)

I get the following error:

SQL query: Documentation

SELECT nombre , p.DetallePrestaciones, o.Salario
from empleados AS e 
inner join ocupaciones as  o 
on o.PkOcupacion=e.FkOcupacion 
inner join prestaciones as p  
on  p.PkPrestaciones= (CASE MONTH(CURRENT_DATE())
WHEN 1 THEN  1
WHEN 7 THEN  2
WHEN 12 THEN  3
ELSE 0
END CASE) LIMIT 0, 25

MySQL has said: Documentation

  

1064 - Something is wrong in its syntax near 'CASE) LIMIT 0, 25' on line 11

    
asked by IBARBOZA27498 09.06.2018 в 02:31
source

1 answer

0
SELECT nombre , p.DetallePrestaciones, o.Salario
from empleados AS e 
inner join ocupaciones as  o 
on o.PkOcupacion=e.FkOcupacion 
inner join prestaciones as p  
on  p.PkPrestaciones= (CASE 
WHEN MONTH(CURRENT_DATE())=1 THEN  1
WHEN MONTH(CURRENT_DATE())=7 THEN  2
WHEN MONTH(CURRENT_DATE())=12 THEN  3
ELSE 0
END)
    
answered by 09.06.2018 в 03:40