次のシナリオで正規表現を使用してクエリを作成するにはどうすればよいですか。
id name
1 Müllere
2 Kees
3 Hernández
4 Björn
上記は私のMySQLテーブルです。結果を取得したいのですが、名前にアクセント付きの文字が含まれており、名前の長さが 5 を超えています
このクエリを試してください:
Select * from test where Length(name) > '5' and name REGEXP '[accentedcharacters]+';
SELECT * FROM letters
+--------+
| letter |
+--------+
| ' |
| - |
| a |
| b |
| c |
| d |
| e |
| f |
| g |
| h |
| i |
| j |
| k |
| l |
| m |
| n |
| o |
| p |
| q |
| r |
| s |
| t |
| u |
| v |
| w |
| x |
| y |
| z |
| å |
| ä |
| ö |
| ÿ |
+--------+
SELECT *
FROM letters
WHERE letter NOT REGEXP '[a-z\'|A-Z\-]';
+--------+
| letter |
+--------+
| å |
| ä |
| ö |
| ÿ |
+--------+
WHERE length(name) > 5 and name REGEXP '[accentedcharacters]+'
ただし、アクセント付き文字のmysql REGEXPについてはわかりません