Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/04/2015, 12:47
Avatar de Fabu_dina
Fabu_dina
 
Fecha de Ingreso: enero-2004
Mensajes: 425
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Evitar dato null

em firebird tengo algo similar y me funciona pero en mysql cambia


Código MySQL:
Ver original
  1. SET TERM ^ ;
  2.  
  3. CREATE OR ALTER PROCEDURE USR_fechas_folios
  4.     fecha date,
  5.     folio_transacc integer)
  6.    for select a.fecha, b.folio_transacc from fechas a left join
  7.        (select b.fecha_transacc, max(b.folio_transacc) folio_transacc from transacciones b
  8.         where b.fecha_transacc between '1.4.15' and '22.4.15'
  9.         group by 1) b
  10.         on b.fecha_transacc = a.fecha
  11.         into :fecha, :folio_transacc
  12.    do
  13.      begin
  14.         if (folio_transacc is null) then
  15.            SELECT max(b.folio_transacc) from transacciones b
  16.             where b.fecha_transacc < :fecha
  17.              into :folio_transacc;
  18.            if (folio_transacc is null) then
  19.               folio_transacc = 0;
  20.       suspend;
  21.       end
  22.  
  23. SET TERM ; ^
  24.  
  25. GRANT ALL ON fechas TO PROCEDURE USR_fechas_folios;
  26.  
  27. GRANT ALL ON transacciones TO PROCEDURE USR_fechas_folios;
  28.  
  29. GRANT EXECUTE ON PROCEDURE USR_fechas_folios TO CONSULTAS;
  30. GRANT EXECUTE ON PROCEDURE USR_fechas_folios TO SYSDBA;