select * from sp_get_phase ('sandip', 'oms', '1,4') this return a Blank record
it would match ur query against '1,4' for the corressponding field in the table.
do u really have one such value for that field in your table, i mean '1,4' ??
it won't search for 1 and 4 separately if that is what you want your query to work.
~Harpreet
On 12/21/06, Sandip G <sandip@xxxxxxxxxxxxx> wrote:
I am using PostgreSql 8.1 with pgAdmin III. OS is XP.this is my function:
CREATE OR REPLACE FUNCTION sp_get_phase(character varying, character varying, character varying)
RETURNS ret_dv_sp_get_phase AS
$BODY$
SELECT BOOK_NO, USER_ID, COMPANY_ID, PHASE, UPDATE_USER_ID, UPDATE_DATE,
AddInfo1, AddInfo2
FROM T_PHASE
WHERE (USER_ID = $1) AND (COMPANY_ID = $2) AND BOOK_NO IN ($3)
$BODY$
LANGUAGE 'sql' VOLATILE;
When I run
select * from sp_get_phase ('sandip', 'oms', '4') returns 1 record.....this works fine....
select * from sp_get_phase ('sandip', 'oms', '1') returns 1 record.....this also works fine... BUT
select * from sp_get_phase ('sandip', 'oms', '1,4') this return a Blank record.
I tried to execute the SQL statement from the function
SELECT BOOK_NO, USER_ID, COMPANY_ID, PHASE, UPDATE_USER_ID, UPDATE_DATE,
AddInfo1, AddInfo2
FROM T_PHASE
WHERE (USER_ID = 'testUser') AND (COMPANY_ID = 'testCompany') AND BOOK_NO IN (1,4)
----- This Works fine... returns 2 records. What may be the problem?
Thanks in advance.
Regards,
Sandip.
--