2009-08-28 88 views
0

我正在使用Oracle 10g中的REGEXP_LIKE函數來查找後綴爲_#(如_1,_2等)的列中的值。我可以在下面的查詢中找到值的任何部分的_#,但是最終我只能返回帶有_#的值嗎?正則表達式_#在字符串末尾

SELECT * FROM Table WHERE REGEXP_LIKE (COLUMN,'_[[:digit:]]') 
+0

如果你發現自己陷入這樣的事情,你可能會嘗試使用谷歌搜索正則表達式備忘單。你必須確保你得到一個符合你特定風格的符號,但是對於「$ End of line」掃描單個頁面非常簡單。 – Cascabel 2009-08-28 19:22:15

回答

11

當然可以。使用...

SELECT * FROM Table WHERE REGEXP_LIKE (COLUMN,'_[[:digit:]]$') 

$字符匹配「字符串末尾」。

+0

謝謝!雖然我將不得不花費一些高質量的時間與我的「掌握正則表達式」書。仍然在待辦事項清單上,但在另一天。 – caddis 2009-08-28 19:16:47

+0

你真的真的應該讀那本書。瞭解正則表達式是對編碼器生產力的重大貢獻。 – APC 2009-08-28 20:30:12

2

無需使用reg exps。

select * from table where substr(column,-2) between '_0' and '_9'; 
+0

非常酷的回覆感謝您發佈它。 – caddis 2009-08-31 14:19:23

相關問題