Hi, All
when i execute this function, this showing error :-
Error Code : 1242
Subquery returns more than 1 row
Actually i want to select particular month No. I have date like 01-Aug-2013 (dd-mmm-yyyy)and i want to convert this into (yymmdd) format than after call this function in sp
DELIMITER $$
DROP FUNCTION IF EXISTS `pnb_etl`.`fn_monthname`$$
CREATE DEFINER=`loyetl`@`localhost` FUNCTION `fn_monthname`(v_monthNam varchar(3)) RETURNS int(2)
BEGIN
DECLARE monthNo int(2) DEFAULT null;
if v_monthNam =(select (SUBSTRING(BSN_DATE,4,3)) from loylty_recon_intermediate)then
CASE
WHEN v_monthNam='jan' THEN
SET monthNo = 01;
WHEN v_monthNam='feb' THEN
SET monthNo = 02;
WHEN v_monthNam='mar' THEN
SET monthNo = 03;
WHEN v_monthNam='apr' THEN
SET monthNo = 04;
WHEN v_monthNam='may' THEN
SET monthNo = 05;
WHEN v_monthNam='jun' THEN
SET monthNo = 06;
WHEN v_monthNam='jul' THEN
SET monthNo = 07;
WHEN v_monthNam='aug' THEN
SET monthNo = 08;
WHEN v_monthNam='sep' THEN
SET monthNo = 09;
WHEN v_monthNam='oct' THEN
SET monthNo = 10;
WHEN v_monthNam='nov' THEN
SET monthNo = 11;
WHEN v_monthNam='dec' THEN
SET monthNo = 12;
ELSE
SET monthNo=0;
END CASE;
RETURN monthNo;
end if;
END$$
DELIMITER ;
Please guide me where is the problem in my coding.
Thanks,
Dhiraj