Ver Mensaje Individual
  #4 (permalink)  
Antiguo 11/08/2012, 11:15
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Problema en CASE en SELECT - Rutina


Bueno, es el error que me está marcando el MySQL Workbench...
SI está dando otro error, entonces puede ser de lógica o de datos.



Personalmente, yo que tu aprovecharía mejor las capacidades del SP para poder hacer algo mas que construir una consulta tan complicada, cuando puedes resolver el problema de forma estructurada:
Código MySQL:
Ver original
  1. DELIMITER $$
  2.  
  3. CREATE PROCEDURE stored_test(IN categoria VARCHAR(200))
  4.    IF categoria = '' OR categoria IS NULL THEN
  5.        SELECT g.*, '' categoria
  6.        FROM grupo G;
  7.     ELSE
  8.        SELECT g.*, '' categoria
  9.        FROM grupo G INNER JOIN grupo_categoria GC ON G.id = GC.grupo_id;
  10.     END IF;

Escribir más código no significa necesariamente hacer cosas complejas, sino buscar resolver los problemas en un orden más simple.
Por cierto, tengo SP que tienen más de 500 líneas... Y aún así son muy eficientes.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)