Like operator in plsql
Hi All,
Below code should be returning 2 values. but i get only one. when i just execute the sql query alone i am getting 2 values. but when i execute the funciton i get only one vlaue. can you please advise?
i have given sample table data and results for your reference
CREATE OR REPLACE FUNCTION OGRDSTEST.f_get_ref_id_by_val(lv_ref_val IN VARCHAR2,lv_ref_typ IN VARCHAR2)
RETURN NUMBER
IS
ln_ref_id NUMBER;
CURSOR ref_cur
IS
SELECT ref_id
FROM ref_t r,ref_typ_t rt
WHERE r.ref_typ_id = rt.ref_typ_id
AND r.ref_val LIKE '%'||UPPER(lv_ref_val)||'%'
AND rt.ref_typ_name LIKE '%'||UPPER(lv_ref_typ)||'%';
BEGIN
OPEN ref_cur;
FETCH ref_cur INTO ln_ref_id;
CLOSE ref_cur;
RETURN ln_ref_id;
END f_get_ref_id_by_val;
REF_T
ref_id ref_typ_id ref_val
1 2 module
2 2 global module
REF_TYP_T
ref_typ_id ref_typ_name
2 characteristic type
SELECT ref_id
FROM ref_t r,ref_typ_t rt
WHERE r.ref_typ_id = rt.ref_typ_id
AND r.ref_val LIKE '%'||UPPER('module')||'%'
AND rt.ref_typ_name LIKE '%'||UPPER('characteristic type')||'%';
output:
1
2
SELECT ogrdstest.f_get_ref_id_by_val('module','characteristic type') FROM DUAL
output:
1
One small correction. By viewing your data, Your query should return no rows!, because in the tables "modules" are in lower case whereas you are comparing it with UPPER.
SQL> SELECT * FROM REF_TYP_T;
REF_TYP_ID REF_TYP_NAME
2 characteristic type
SQL> select *from ref_t;
REF_ID REF_TYP_ID REF_VAL
1 2 module
2 2 global module
SQL> SELECT ref_id
2 FROM ref_t r,ref_typ_t rt
3 WHERE r.ref_typ_id = rt.ref_typ_id
4 AND r.ref_val LIKE '%'||UPPER('module')||'%'
5 AND rt.ref_typ_name LIKE '%'||UPPER('characteristic type')||'%';
no rows selected
SQL> ed
Wrote file afiedt.buf
1 SELECT ref_id
2 FROM ref_t r,ref_typ_t rt
3 WHERE r.ref_typ_id = rt.ref_typ_id
4 AND UPPER(r.ref_val) LIKE '%'||UPPER('module')||'%'
5* AND UPPER(rt.ref_typ_name) LIKE '%'||UPPER('characteristic type')||'%'
SQL> /
REF_ID
1
2Also, If you want to use it in SQL statement, you can use PIPELINED function as
CREATE OR REPLACE FUNCTION f_get_ref_id_by_val(lv_ref_val IN VARCHAR2,
lv_ref_typ IN VARCHAR2)
RETURN sys.odciNumberList
pipelined IS
ln_ref_id NUMBER;
CURSOR ref_cur IS
SELECT ref_id
FROM ref_t r, ref_typ_t rt
WHERE r.ref_typ_id = rt.ref_typ_id
AND UPPER(r.ref_val) LIKE '%' || UPPER(lv_ref_val) || '%'
AND UPPER(rt.ref_typ_name) LIKE '%' || UPPER(lv_ref_typ) || '%';
BEGIN
OPEN ref_cur;
LOOP
EXIT WHEN ref_cur%NOTFOUND;
FETCH ref_cur
INTO ln_ref_id;
PIPE ROW(ln_ref_id);
END LOOP;
CLOSE ref_cur;
RETURN;
END f_get_ref_id_by_val;
Similar Messages
-
How to use LIKE operator in plsql
Hi
I wanted to select certain rows using like operator in plsql(Input should be given by the user). I have given my experiment here .I couldn't get any result.
As per sql syntax while using LIKE operator we should give search criteria within single quote.where as in plsql if we give within single quote its takes as string so no output is comming.what is solution ? How to use like operator in plsql?
sql syntax
SQL>SELECT customer_name FROM customer_header
WHERE customer_name LIKE 'B%' ; customer_name
Bala murali
Babu
Basker
plsql syntax
PROCEDURE pro_custheader_like ( v_cname IN varchar2
,answer OUT type_refcur_customer) IS
BEGIN
OPEN answer FOR
SELECT customer_name FROM customer_header
WHERE customer_name LIKE ( ' v_cname ' );
END pro_custheader_like;
execution command
sql>variable answer refcursor;
sql>set serveroutput on
sql>exec package_name.pro_custheader_like( 'R',:answer);
plsql successfully completed
sql>print :answer
no row selected
by
balamuralikrishnan.splsql syntax
PROCEDURE pro_custheader_like ( v_cname IN
varchar2
,answer OUT
type_refcur_customer) IS
N
OPEN answer FOR
SELECT customer_name FROM customer_header
WHERE customer_name LIKE ( v_cname );
END pro_custheader_like;
Try it without any quotes. And, let us know your feedback.
Regards.
Satyaki De.
Message was edited by:
Satyaki_De -
Hi,
I was just wondering if there is any operator in OAFramework which is similar to "LIKE" operator in PL/SQL?
ThanksActually in my case, i cannot use PLSQL because, in the ReviewPage of my custom page, i need to check the list of all the approvals for which the page goes once submitted. In this process, i had to check for some names, some jobs and add extra information from the page based on the values i get and etc.
But i am glad that i could achieve this functionality with the "regionMatches" function for string. Below is the logic i used.
public boolean XXXMatch(String searchStr, String findStr )
int searchStrLength = searchStr.length();
int findStrLength = findStr.length();
boolean foundIt = false;
for (int i = 0; i <= (searchStrLength - findStrLength); i++)
if (searchStr.regionMatches(i, findStr, 0, findStrLength))
foundIt = true;
return foundIt;
if (!foundIt)
return foundIt;
return foundIt;
To test the above function, In the parameters, if we pass "Hello World how are you" as a parameter value for searchStr and "World" for the parameter value findStr, it will return true.
Thanks -
Alternate query to LIKE operator
I have table with contains 65 lakes records, I need to delete the records which does not contains space in column values
Ex : table
Code test_num
NL 123 AP
NL 567ZP
NL 427 SL
NL 456IP
I had return the query like these Delete table A where test_num is not like ‘% %”;
But the problem is the query is getting hang. Because of I am using like operator
Please let me know is there is any alternate query to write
If there any PLSQL to write fetch the query 1laksh records and then delete the records
Deleted rows count is 20Lakuser13711017 wrote:
I had return the query like these Delete table A where test_num is not like ‘% %”;
But the problem is the query is getting hang. Because of I am using like operator
What makes you think so?
It could "hang" (you probably mean "take a long time") due to many other reasons:
- Your system is busy with other stuff and your process gets only partial system resources;
- There is a delete (row) trigger on that table that takes a lot of time;
- The table has many indexes, whose maintenance takes a lot of time;
I doubt it is "because of you using like operator"... -
How can I do Shift operation in plsql
hello,
i want to know whether there is any package or operator to do the shift operation in plsql.
like (myVar<<8 in c++).why don't you use
myvar := mywar * power(2,8); -
Can I use a LIKE operator in an IF statement in a column formula
This is what I have so far.
CASE WHEN Opportunity."Sales Type" LIKE '*New Acct' THEN 'Sale to NEW Customer' END
I want to display 'Sale to NEW Customer' if opportunity type contains the terms New Acct.Try this:
CASE WHEN Opportunity."Sales Type" LIKE '%New Acct' THEN 'Sale to NEW Customer' END
The LIKE operator requires a % wildcard rather than the * wildcard.
Mike L. -
Why the 'LIKE' operator takes so much time to run?
I have a table T with 3 columns and 3 indexes:
CREATE TABLE T
id VARCHAR2(38) NOT NULL,
fid VARCHAR2(38) NOT NULL,
val NVARCHAR2(2000) NOT NULL
ALTER TABLE T ADD (CONSTRAINT pk_t PRIMARY KEY (id,fid));
CREATE INDEX t_fid ON T(fid);
CREATE INDEX t_val ON T(val);
Then I have the following two queries which differ in only one place - the 1st one uses the '=' operator whereas the 2nd uses 'LIKE'. Both queries have the identical execution plan and return one identical row. However, the 1st query takes almost 0 second to execute, and the 2nd one takes more than 12 seconds, on a pretty beefy machine. I had played with the target text, like placing '%' here and/or there, and observed the similar timing every time.
So I am wondering what I should change to make the 'LIKE' operator run as fast as the '=' operator. I know CONTEXT/CATALOG index is a viable approach, but I am just trying to find out if there is a simpler alternative, such as a better use of the index t_val.
1) Query with '=' operator
SELECT id
FROM T
WHERE fid = '{999AE6E4-1ED9-459B-9BB0-45C913668C8C}'
AND val = '3504038055275883124';
2) Query with 'LIKE' operator
SELECT id
FROM T
WHERE fid = '{999AE6E4-1ED9-459B-9BB0-45C913668C8C}'
AND val LIKE '3504038055275883124';
Execution Plan
0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=1 Card=1 Bytes=99)
1 0 TABLE ACCESS (BY INDEX ROWID) OF 'T' (Cost=1 Card=1 Bytes=99)
2 1 INDEX (RANGE SCAN) OF 'T_VAL' (NON-UNIQUE) (Cost=4 Card=12)I will for sure try to change the order of the PK and see whether there will be any impact to the performance.
In our application, val is much closer to a unique value than fid. In the example query, the execution plan showed that the index on val was indeed used in the execution of the query. That's why the 1st query took almost no time to return (our table T has more than 6 million rows).
I was hoping the 'LIKE' operator would utilize the t_val index effectively and provide similar performance to the '=' operator. But apparently that's not the case, or needs some tricks. -
Dear Experts,
i am getting the below error when i was giving * (Star) to view all the items in DB
[Microsoft][SQL Server Native Client 11.0][SQL Server]The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or LIKE operator. 'Items' (OITM) (OITM)
As i was searching individually it is working fine
can any one help me how to find this..
Regards,
Meghanath.SDear Nithi Anandham,
i am not having any query while finding all the items in item master data i am giving find mode and in item code i was trying to type *(Star) and enter while typing enter the above issue i was facing..
Regards,
Meghanath -
hi Experts,
while running SQL Query i am getting an error as
The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or LIKE operator. for the query
select T1. Dscription,T1.docEntry,T1.Quantity,T1.Price ,
T2.LineText
from OQUT T0 INNER JOIN QUT1 T1 ON T0.DocEntry = T1.DocEntry INNER JOIN
QUT10 T2 ON T1.DocEntry = T2.DocEntry where T1.DocEntry='590'
group by T1. Dscription,T1.docEntry,T1.Quantity,T1.Price
,T2.LineText
how to resolve the issueDear Meghanath,
Please use the following query, Hope your purpose will serve.
select T1. Dscription,T1.docEntry,T1.Quantity,T1.Price ,
CAST(T2.LineText as nvarchar (MAX))[LineText]
from OQUT T0 INNER JOIN QUT1 T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN
QUT10 T2 ON T1.DocEntry = T2.DocEntry --where T1.DocEntry='590'
group by T1. Dscription,T1.docEntry,T1.Quantity,T1.Price
,CAST(T2.LineText as nvarchar (MAX))
Regards,
Amit -
We have a simple select query which is using the 'Like' operator on a char(4) column.
In a oracle windows environment when we have a query such as:
select col1, col2, col3
from table1
where col1 like 'AB'
it returns everything which is = to 'AB' and doesn't seem to be including the trailing 2 spaces as would be stored becasue the column is char(4)
In a oracle unix environment when we the same query:
select col1, col2, col3
from table1
where col1 like 'AB'
it returns nothing...
It appears as if the version running on a windows environment is truncating the trailing 2 spaces when using the like expression but in a unix environment, it is not. Does anybody have any idea or clue what could be occuring or if there is some database setting which could cause this to occur?Quote from Oracle Doc:
Character Values
Character values are compared using one of these comparison rules:
Blank-padded comparison semantics
Nonpadded comparison semantics
The following sections explain these comparison semantics.
Blank-Padded Comparison Semantics If the two values have different lengths, then Oracle first adds blanks to the end of the shorter one so their lengths are equal. Oracle then compares the values character by character up to the first character that differs. The value with the greater character in the first differing position is considered greater. If two values have no differing characters, then they are considered equal. This rule means that two values are equal if they differ only in the number of trailing blanks. Oracle uses blank-padded comparison semantics only when both values in the comparison are either expressions of datatype CHAR, NCHAR, text literals, or values returned by the USER function.
Nonpadded Comparison Semantics Oracle compares two values character by character up to the first character that differs. The value with the greater character in that position is considered greater. If two values of different length are identical up to the end of the shorter one, then the longer value is considered greater. If two values of equal length have no differing characters, then the values are considered equal. Oracle uses nonpadded comparison semantics whenever one or both values in the comparison have the datatype VARCHAR2 or NVARCHAR2.
" -
Using Like Operator in a decode function
Hi,
I am trying to find out if I can use the like operator in a decode function
like:
select decode(1234,like '%123%','123 is a match') from dual;
this reults in error ORA-00936: missing expression
is there any way to make this work?
thank youSQL> ed
Wrote file afiedt.buf
1 WITH tbl AS (SELECT '201aaa' dt FROM DUAL UNION ALL
2 SELECT '123bbb' dt FROM DUAL UNION ALL
3 SELECT '567ccc' dt FROM DUAL UNION ALL
4 SELECT 'ab123ddd' dt FROM DUAL
5 )
6 SELECT dt,CASE WHEN dt like '%123%' THEN 'Match'
7 ELSE 'Not Matched'
8 END With_case
9 ,DECODE(REGEXP_SUBSTR(dt,'123'),NULL,'Not Match','Match') With_Regexp
10 ,DECODE(INSTR(dt,'123'),0,'Not Match','Match') With_Instr
11 ,DECODE(REPLACE(dt,'123'),dt,'Not Match','Match') With_Replace
12* FROM tbl
SQL> /
DT WITH_CASE WITH_REGE WITH_INST WITH_REPL
201aaa Not Matched Not Match Not Match Not Match
123bbb Match Match Match Match
567ccc Not Matched Not Match Not Match Not Match
ab123ddd Match Match Match MatchEdited by: Saubhik on Jul 26, 2010 5:24 AM
Edited by: Saubhik on Jul 26, 2010 5:40 AM
Edited by: Saubhik on Jul 26, 2010 5:40 AM -
LIKE operator is not working in SQL Query in XML file
Hi Gurus,
LIKE operator is not working in SQL query in XML template.
I am creating a PDF report in ADF using Jdeveloper10g. The XML template is as follows
<?xml version="1.0" encoding="WINDOWS-1252" ?>
<dataTemplate name="catalogDataTemplate" description="Magazine
Catalog" defaultPackage="" Version="1.0">
<parameters>
<parameter name="id" dataType="number" />
<parameter name="ename" dataType="character" />
</parameters>
<dataQuery>
<sqlStatement name="Q1">
<![CDATA[
SELECT ename, empno, job, mgr from EMP where deptno=:id and ename LIKE :ename || '%']]>
</sqlStatement>
</dataQuery>
<dataStructure>
<group name="EmployeeInfo" source="Q1">
<element name="EmployeeName" value="ename" />
<element name="EMPNO" value="empno" />
<element name="JOB" value="job"/>
<element name="MANAGER" value="mgr" />
</group>
</dataStructure>
</dataTemplate>
if i pass the parameter value of :ename from UI, it doesn't filter. But if I give ename = :ename it retrieves the data. Can anyone help me why LIKE operator doesn't work here?
Appreciate your help,
Shyamal
email: [email protected]Hi
Well for a start, you are doing some very strange conversions there. For example...
and to_char(a.msd, 'MM/DD/YYYY') != '11/11/2030'
and to_char(a.msd, 'MM/DD/YYYY') != '10/10/2030'If a.msd is a date then you should e converting on the other side ie.
and a.msd != TO_DATE('11/11/2030', 'MM/DD/YYYY')
and a.msd != TO_DATE('10/10/2030', 'MM/DD/YYYY')Also, you may want to take into consideration nothing being input in :P2_ITEM_NUMBER like this...
AND INSTR(a.item_number,NVL(:P2_ITEM_NUMBER,a.item_number)) > 0Is item number actually a number or char field? If it's a number, you want to explicitly convert it to a string for using INSTR like this...
AND INSTR(TO_CHAR(a.item_number),NVL(TO_CHAR(:P2_ITEM_NUMBER),TO_CHAR(a.item_number))) > 0?
Cheers
Ben -
Problem with LIKE operator in select query
Hi,
I want to compare one field using LIKE operator. But i m not able to do that.
DATA: l_doctext type c value ''''.
CONCATENATE l_doctext s_lbktxt-low '%' l_doctext INTO s_lbktxt-low.
SELECT bukrs belnr gjahr blart bldat budat xblnr bktxt waers awtyp
FROM bkpf INTO TABLE g_t_bkpf_labor
FOR ALL ENTRIES IN g_t_bseg_unique
WHERE bukrs = g_t_bseg_unique-bukrs
AND belnr = g_t_bseg_unique-belnr
AND gjahr = g_t_bseg_unique-gjahr
AND blart = p_ldtype
AND bktxt LIKE s_lbktxt-low.
plz help. Am i dng something wrong.
Value in s_lbktxt can be like 'TEA.....'hi ,
check this program..
tables:mara.
data: begin of it_mara occurs 0,
matnr like mara-matnr,
meins like mara-meins ,
mtart like mara-mtart,
end of it_mara.
select-options: s_matnr for mara-matnr.
select matnr
meins
mtart
from mara
into table it_mara
where matnr like '%7'.
sort it_mara by matnr.
loop at it_mara.
write:/ it_mara-matnr,
it_mara-meins,
it_mara-mtart.
endloop.
regards,
venkat. -
I need a user to be able to enter a city to pull up results
for that city using a LIKE operator. However, if the master list
contains St. Paul, instead of Saint Paul, how can I get either one
to show up? I've tried several things and I just can't get it to
work!!! Thanks!I have had code like some below but it slows thing down
because indexes can't be used. Instead for searches that don't have
to be exactly up to date I build a work file that is in a
standardized format nightly but it could be done by triggers. This
code is for Oracle.
where
( length(
translate(
UPPER(LTRIM(RTRIM('#Form.StreetName#'))
'A,._%1234567890'
,'A')
) >= 4 AND
V.StNum = '#Form.StreetNumber#'
<CFIF '#Form.StreetDirection#' NEQ ''>
and V.stdir = '#Form.StreetDirection#'
</cfif>
and (
V.stName LIKE RTRIM(SUBSTR(
DECODE(
SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',1,INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',1,1)-1)
,'1','FIRST'
,'2','SECOND'
,'3','THIRD'
,'4','FOURTH'
,'5','FIFTH'
,'6','SIXTH'
,'7','SEVENTH'
,'8','EIGHTH'
,'9','NINTH'
,'10','TENTH'
,'11','ELEVENTH'
,'12','TWELVTH'
,'1ST','FIRST'
,'2ND','SECOND'
,'3RD','THIRD'
,'4TH','FOURTH'
,'5TH','FIFTH'
,'6TH','SIXTH'
,'7TH','SEVENTH'
,'8TH','EIGHTH'
,'9TH','NINTH'
,'10TH','TENTH'
,'11TH','ELEVENTH'
,'12TH','TWELVTH'
,'E','EAST'
,'N','NORTH'
,'S','SOUTH'
,'W','WEST'
,'SE','SOUTHEAST'
,'SW','SOUTHWEST'
,'SAINT','ST'
,'MT','MOUNT'
,'CT','COURT'
,'CORP','CORPORATE'
,SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',1,INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',1,1)-1))
||
DECODE(instr(ltrim(rtrim('#Form.StreetName#')),' ',1,1),0,'',
' '||
SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',1,1)+1,
INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ','
',-2,1)-INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#')))
,'`''_,.%','%%')||' ',' ',1,1))
||
DECODE(
RTRIM(SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',-2,1)+1))
,'AVENUE','AV'
,'AVE','AV'
,'BOULEVARD','BL'
,'BLVD','BL'
,'COURT','CT'
,'CRT','CT'
,'DRIVE','DR'
,'LANE','LN'
,'PARK','PK'
,'PLACE','PL'
,'POINT','PT'
,'POINTE','PT'
,'ROAD','RD'
,'SQUARE','SQ'
,'STREET','ST'
,'STR','ST'
,'TRACE','TR'
,'TRAIL','TR'
,'CIRCLE','CIR'
,'CR','CIR'
,'EXTENSION','EXT'
,'HIGHWAY','HWY'
,'HIWAY','HWY'
,'HIWY','HWY'
,'PIKE','PKE'
,'RW','ROW'
,'RN','RUN'
,'TERRACE','TER'
,'WY','WAY'
,RTRIM(SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',-2,1)+1)))
),1,4))
||'%'
OR
V.stName LIKE RTRIM(SUBSTR(
DECODE(
SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',1,INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',1,1)-1)
,'1','FIRST'
,'2','SECOND'
,'3','THIRD'
,'4','FOURTH'
,'5','FIFTH'
,'6','SIXTH'
,'7','SEVENTH'
,'8','EIGHTH'
,'9','NINTH'
,'10','TENTH'
,'11','ELEVENTH'
,'12','TWELVTH'
,'1ST','FIRST'
,'2ND','SECOND'
,'3RD','THIRD'
,'4TH','FOURTH'
,'5TH','FIFTH'
,'6TH','SIXTH'
,'7TH','SEVENTH'
,'8TH','EIGHTH'
,'9TH','NINTH'
,'10TH','TENTH'
,'11TH','ELEVENTH'
,'12TH','TWELVTH'
,'E','EAST'
,'N','NORTH'
,'S','SOUTH'
,'W','WEST'
,'SE','SOUTHEAST'
,'SW','SOUTHWEST'
,'SAINT','ST'
,'MOUNT','MT'
,'CT','COURT'
,'CORP','CORPORATE'
,SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',1,INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',1,1)-1))
||
DECODE(instr(ltrim(rtrim('#Form.StreetName#')),' ',1,1),0,'',
' '||
SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',1,1)+1,
INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ','
',-2,1)-INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#')))
,'`''_,.%','%%')||' ',' ',1,1))
||
DECODE(
RTRIM(SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',-2,1)+1))
,'AVENUE','AV'
,'AVE','AV'
,'BOULEVARD','BL'
,'BLVD','BL'
,'COURT','CT'
,'CRT','CT'
,'DRIVE','DR'
,'LANE','LN'
,'PARK','PK'
,'PLACE','PL'
,'POINT','PT'
,'POINTE','PT'
,'ROAD','RD'
,'SQUARE','SQ'
,'STREET','ST'
,'STR','ST'
,'TRACE','TR'
,'TRAIL','TR'
,'CIRCLE','CIR'
,'CR','CIR'
,'EXTENSION','EXT'
,'HIGHWAY','HWY'
,'HIWAY','HWY'
,'HIWY','HWY'
,'PIKE','PKE'
,'RW','ROW'
,'RN','RUN'
,'TERRACE','TER'
,'WY','WAY'
,RTRIM(SUBSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||'
',INSTR(translate(UPPER(LTRIM(RTRIM('#Form.StreetName#'))),'A`''_,.%','A')
||' ',' ',-2,1)+1)))
),1,4))
||'%' ) -
Problem in JDBC , when using LIKE operator. - VERY URGENT
Problem in JDBC , when using LIKE operator.
LINE 1 : String temp = "AA";
LINE 2 : String query = "select * from emp where EMPNAME like '*temp*' ";
LINE 3 : Staement st = con.createStaement();
LINE 4 : ResultSet rs = st.executeQuery(query);
'*' character is not getting evaluated. In MS ACCESS2000 only * is accepted instead of '%'. Moreover in MS ACCESS the like operator has to be used within double quotes as a String. whereas in other databases, it accepts single quotes as a String.
Ex:
In MS ACCESS
select * from emp where ename like "*aa*";
Other Databases
select * from emp where ename like '%aa%';
In my situation iam passing a Variable inside a like operator and '*' is used.
For the above Scenario, Please help me out.
If possible Kindly let me know the exact Syntax.
Please give me the answer as LINE1,LINE2,LINE3,LINE4,
I have verified in JDBC Spec also, it has been specified to use escape sequence.that too did not work.
Due to this, My project is in hold for about 4 days. I could not find a suitable solution.
Please help me out.I made a LIKE clause work with M$ Access, using PreparedStatement and the % wildcard:
escapeStr = "%";
String sql = "SELECT USERNAME, PASSWORD FROM USERS WHERE USERNAME LIKE ?";
PreparedStatement statement = connection.prepareStatement(sql);
statement.setString(1, ("user" + escapeStr));
ResultSet resultSet = statement.executeQuery();
while (resultSet.next())
System.out.println("username: " + resultSet.getObject("USERNAME") + " password: " + resultSet.getObject("PASSWORD"));
Maybe you are looking for
-
I've just downloaded an update to my Flash player and it seems to have disabled all video function on my Macbook. Any advice?
-
Old Ipod Software won't run iTunes 7
So I am getting ready to fly home and I had gotten a brand new ipod ( I had an old 80 gig video and got a new one!) so I install the new Itunes 7.1 ( after uninstalling the old iTunes of course) and it tells me that it cannot update iTunes because of
-
Transferring song from iTunes to GarageBand
How do you transfer a purchased song into the GarageBand application?
-
Hi, I need a router model for traffic loads from 1 Gbps to max 2.5 Gbps with IPSec encryption, 2 Gigabit Ethernet interfaces or 2 10G interfaces, but the recommended ASR 1001 + Advanced Enterprise Services licence costs more than USD20.000. ¿Does any
-
How to export all the man page in mac to PDF?
How to export all the man page in mac to PDF? I have tried "man -t cat | pstopdf -i -o ~/Desktop/cat.pdf" but this only output one page. How could I dump all the man pages to pdf with one or few command as possible? The other question is, I copy all