Buonasera a tutti.
Ho creato questa stored procedure:
CREATE DEFINER=`root`@`localhost` PROCEDURE `Param_Proc`(INFromDate DATE, IN ToDate DATE)
BEGIN
CREATE TEMPORARY TABLE IF NOT EXISTS `temporanea` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`LineaID` char(5) NOT NULL DEFAULT 'FLA',
`IDSezione` char(20) NOT NULL DEFAULT '',
`DataStartPrg` date NOT NULL DEFAULT '0000-00-00'
`Causa_1` varchar(255) DEFAULT NULL COMMENT 'Causale',
PRIMARY KEY (`Id`,`ID_Prog`,`IDSezione`,`DataStartPrg`)
) ENGINE=InnoDB AUTO_INCREMENT=2092 DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT;
INSERT INTO temporanea(lineaID,IDSezione,DataStartPrg,Causa_1)
SELECT
TabellaA.lineaID,TabellaA.IDSezione,TabellaA.DataStartPrg,TabellaA.Causa_1
FROM TabellaA
UNION ALL
TabellaA.lineaID,TabellaA.IDSezione,TabellaA.DataStartPrg,TabellaA.Causa_2
FROM TabellaA
WHERE DataStartPrg BETWEEN FromDate AND ToDate;
END;
però quando la eseguo da riga di comando non mi rispetta il range di date, mi restituisce tutti i record.
Da riga di comando digito:
call Param_Proc ('2011-12-20','2011-12-30');
Grazie..
Modificato da inactive il 07 gennaio 2012 21.19 -