Hi...
I want to develop a dynamic search query in toad (oracle 9i).
My Query is -
PROCEDURE MY_QUERY
(
IN_OPTION NUMBER,
IN_FROM DATE,
IN_TO DATE,
IN_COL1 NUMBER,
IN_COL2NUMBER,
IN_COL3 NUMBER,
OUT_CUR OUT RPT_CUR
)
AS
MY_QUERY VARCHAR2(4000);
MY_WHERE_CLAUSE VARCHAR2(4000) ;
IF IN_OPTION IS NOT NULL AND IN_OPTION= 1 THEN
MY_WHERE_CLAUSE := MY_WHERE_CLAUSE || 'AND DATE_COL1 BETWEEN' || TO_DATE(IN_FROM,'dd-MM-yyyy') || 'AND' || TO_DATE(IN_DATE_TO,'dd-MM-yyyy');
END IF;
IF IN_OPTION IS NOT NULL AND IN_OPTION= 2 THEN
MY_WHERE_CLAUSE := MY_WHERE_CLAUSE || 'AND DATE_COL2 BETWEEN' || TO_DATE(IN_FROM,'dd-MM-yyyy') || 'AND' || TO_DATE(IN_DATE_TO,'dd-MM-yyyy');
END IF;
IF IN_COL1 IS NOT NULL THEN
MY_WHERE_CLAUSE := MY_WHERE_CLAUSE || 'AND COL5 = ' || IN_COL1;
END IF;
MY_QUERY := MY_QUERY || ' SELECT vwo.COL3, vwo.COL4, ';
MY_QUERY := MY_QUERY || ' (SELECT cm.COL2 from TABLE_MASTER_1 cm where cm.DELETED_STATUS = 0 and cm.TID = vwo.COMPANY_ID )as Company ';
MY_QUERY := MY_QUERY || ' from TABLE_12 vwo where
vwo.COL_17 IN ';
MY_QUERY := MY_QUERY || ' ( ';
MY_QUERY := MY_QUERY || ' SELECT vcomp.COL_17 from TABL_17 vcomp where vcomp.DELETED_STATUS = 0 ';
MY_QUERY := MY_QUERY || MY_WHERE_CLAUSE ;
MY_QUERY := MY_QUERY || ' ) ';
How do I do this ??
PLease help
Loading
Riddhi ValechaPosted Feb 12, 2015, 7:15 AM
Please help me out with other error -
I have 5 parameters to pass from front-end -
1. Date_From (DateTime)
2. Date_To (DateTime)
3. C_ID (int32)
4. L_ID (int32)
5. D_ID (int32)
---
Values in variables -
1. Date_From (DateTime) - 01-01-2015 12:00:00 AM
2. Date_To (DateTime) - 28-02-2015 12:00:00 AM
3. C_ID (int32) - Any Number or Null (If user selects, then value else null, since this is a search query).
4. L_ID (int32) - Any Number or Null
5. D_ID (int32) - Any Number or Null
-----------------
Error -
ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'MY_QUERY'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
----
I have to get data in between 2 dates... In query, I have used to_date ('Date_From','dd-mm-yyyy') function.. and same with To_Date , i .e. to_Date('Date_To','dd-mm-yyyy')..
PLease let me know where am I going wrong !! Thanks a ton in advance..
Its Urgent !!!
PLEASE HELP ME OUT...
Riddhi ValechaPosted Feb 11, 2015, 4:00 AM
OPEN OUT_CUR FOR MY_QUERY ;
Error -
PLS-00382: expression is of wrong type
Manish Kumar ChoudharyPosted Feb 11, 2015, 3:38 AM