Candy
Candy

Reputation: 431

how to use a string that contain ' in SQL "IN" clause

i have a string value like 'Apple's'. i want to use this string in SQL "IN" clause like below query

select * from tbl_fruit where nm_fruit IN(''Apple's'','Orange');

how i can get the above query work correctly ?

Many Thanks, Awais Afzal.

Upvotes: 25

Views: 159362

Answers (2)

Giznary
Giznary

Reputation: 21

I have found SQL correctly interprets the ASCII single-closed-quote (ALT 0146) as an apostrophe in searches while the "IN" treats it like any other character. Now I can search for 'Matt's Macintosh' using Matt(ASCII character 0146)s Macintosh" without messing up my list or the search.

Upvotes: 2

John Woo
John Woo

Reputation: 263893

double the single quotes,

select * from tbl_fruit where nm_fruit IN ('Apple''s', 'Orange')

but if you do it on the application level, make sure you parameterized the query :)

Upvotes: 42

Related Questions