Here is how to query an Oracle database with special characters. First, create this test table:
Create Table A
( CO VARCHAR2(6))
Insert into A
values('12%345');
Insert into A
values('12%456');
Insert into A
values('123456');
If we want to fetch only those records that begin with '12%' and if we issue the following SQL query, it will return all the records irrespective of "%". For example:
Select co from A where co like '12%%';
This query will return the following records:
CO ====== 12%345 12%456 123456
But we only want two records in the above example, like this:
CO ====== 12%345 12%456
So, to get these results, we have to use escape:
select co from a where co like '12\%%' escape '\';
This will return only those records that begin with "12%":
CO ====== 12%345 12%456
For More Information
- What do you think about this tip? E-mail the editor at
Requires Free Membership to View
- tdichiara@techtarget.com with your feedback.
- The Best Oracle Web Links: tips, tutorials, scripts, and more.
- Have an Oracle tip to offer your fellow DBAs and developers? The best tips submitted will receive a cool prize--submit your tip today!
- Ask your technical Oracle questions--or help out your peers by answering them--in our live discussion forums.
- Check out our Ask the Experts feature: Our SQL, database design, Oracle, SQL Server, DB2, metadata, and data warehousing gurus are waiting to answer your toughest questions.
This was first published in June 2002

Join the conversationComment
Share
Comments
Results
Contribute to the conversation