2017-05-04 38 views
0

我有一個姓氏列表,可以有像這樣的變化 - > DOE,JR。,DO。我需要的是一個Postgres模式匹配或者子字符串函數,它將會從最後一個名字中分離出DO,並把它放在一個單獨的列中。但是,如果模式是這樣的,美國能源部,JR。我不希望那些拆分後綴的名稱,只有我需要列出的專業標題,如MD,DDS,DMD或DO。有人與我合作建議我使用這樣的東西 - >子字符串(姓氏,'[MD,DDS,DMD,DO等] $'),但這是行不通的。Postgresql中的正則表達式/子串函數

select substring('.do' FROM last_name) AS license from table 
+0

他可能認爲這個'$'(MD | DDS | DMD | | DO等)。嘗試一下,讓我知道。 – Rahul

回答

0

下面就拿到駕照的一種方式(忽略任何尾隨空白):

select regexp_matches(last_name, '(MD|DDS|DMD|DO|etc)\s*$') AS license from table;