Re: Search for underscore w/ LIKE
От | Tom Lane |
---|---|
Тема | Re: Search for underscore w/ LIKE |
Дата | |
Msg-id | 10965.962991238@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Search for underscore w/ LIKE (brianb-pgsql@edsamail.com) |
Ответы |
Re: Search for underscore w/ LIKE
|
Список | pgsql-sql |
brianb-pgsql@edsamail.com writes: > How do I use LIKE to search for strings with an underscore? The > documentation (well, Bruce's book) says to use 2 underscores (__) but it > doesn't work. If Bruce's book says that, I hope it's not too late for him to change it ;-) The correct way is to escape the underscore with a backslash. You actually have to write two backslashes in your query: select * from foo where bar like '%\\_baz' The first backslash quotes the second one for the query parser, so that what ends up inside the system is %\_baz, and then the LIKE function knows what to do with that. Similarly, '\\%' would be the way to match a literal %. You can actually backslash-quote any single character this way in LIKE, but % and _ are the only ones where it makes a difference. (In the regexp-matching operators there are many more special characters and so many more times when you need the backslash trick.) regards, tom lane
В списке pgsql-sql по дате отправления: