我想在一個where子句中使用一個條件,指定只選擇帶有拉丁字符(和數字)的行。目前我正在嘗試這個,但這也會回傳帶有西里爾字符的行:
SELECT * FROM temp WHERE temp.name SIMILAR TO '%[^[:ascii:]]%';
如何僅選擇僅包含拉丁字符(和數字)的行?
uj5u.com熱心網友回復:
試試下面的正則運算式:
... WHERE name ~ '^[[:ascii:]]*$' COLLATE "C"
這意味著模式必須完全由 ASCII 字符組成。請注意,“換行符”、空格和其他 ASCII 符號等控制字符$也是 ASCII 字符。如果您只想要字母和數字,請嘗試
... WHERE name ~ '^[a-zA-Z0-9]*$' COLLATE "C"
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/448459.html
標籤:PostgreSQL
上一篇:出現無法識別“ingress.yaml”的錯誤:版本“extensions/v1beta1”中沒有匹配型別“Ingress”
