2010-07-12 3 views
0
DELIMITER $$ 

DROP FUNCTION IF EXISTS `workplantype`.`FUN_STOCKINVENTRY_CHECK` $$ 
CREATE FUNCTION `workplantype`.`FUN_STOCKINVENTRY_CHECK` (
PONo1 VARCHAR(20), 
PartCode1 VARCHAR(45) 
) RETURNS bool 
BEGIN 
DECLARE diff bool; 
set diff=false; 
select if(Remaining_Quantity=0.00, true, false) as diff from tblstockinventory where PONo=PONo1 && PartCode=PartCode1; 
return diff; 
END $$ 

DELIMITER ; 

как ro избежать недопустимого возврата набора результатов из функции mysql error?не разрешено возвращать результирующий набор из функции mysql error?

ответ

3
select if(Remaining_Quantity=0.00, true, false) into @diff 
from tblstockinventory 
where PONo=PONo1 AND PartCode=PartCode1; 

Вы можете уменьшить IF() в

select Remaining_Quantity=0.00 into @diff 

И получить тот же результат

+1

+1 Вы избили меня к нему секунд. Обратите внимание, что '@ diff' должен быть просто' diff', так как это объявленная переменная. – Mike

Смежные вопросы