如何删除mysql表中的数字字符?

Kun*_*tra 5 mysql

Actress在MySQL中有一个名为" "的表.
我想删除列" name" 中的所有数字字符

select * from Actress  limit 5;
+-------+---------------------+
| code  | name                |
+-------+---------------------+
| 11455 | Hanshika_Motwani_19 |
| 11457 | Kajal_Agrwal_11     |
| 11458 | Ileana_21           |
| 11459 | Kaveri_Jha_11       |
| 11462 | Kaveri_Jha_18       |
+-------+---------------------+
5 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)

如何更新我的表以删除MySQL表中的数字字符,以便我可以得到如下结果

select * from Actress  limit 5;
+-------+---------------------+
| code  | name                |
+-------+---------------------+
| 11455 | Hanshika_Motwani_   |
| 11457 | Kajal_Agrwal_       |
| 11458 | Ileana_21           |
| 11459 | Kaveri_Jha_         |
| 11462 | Kaveri_Jha_         |
+-------+---------------------+
Run Code Online (Sandbox Code Playgroud)

Ber*_*fen 5

它看起来不是很好,但它有效。它从字符串中删除任何数字

SELECT
    REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE (
    REPLACE( REPLACE( REPLACE( REPLACE('Hallo_1234567890_99','0','')
    ,'1',''),'2',''),'3',''),'4',''),'5',''),'6',''),'7',''),'8',''),'9','');


update Actress 
SET name  = REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE (
        REPLACE( REPLACE( REPLACE( REPLACE(name,'0','')
        ,'1',''),'2',''),'3',''),'4',''),'5',''),'6',''),'7',''),'8',''),'9','');
Run Code Online (Sandbox Code Playgroud)

如果您使用 MariaDB,您可以使用 REGEX_REPLACE:

update Actress
 set name =  REGEXP_REPLACE(name,'[0-9]','');
Run Code Online (Sandbox Code Playgroud)

样本

MariaDB [(none)]> SELECT REGEXP_REPLACE('A1B2C44','[0-9]','');
+--------------------------------------+
| REGEXP_REPLACE('A1B2C44','[0-9]','') |
+--------------------------------------+
| ABC                                  |
+--------------------------------------+
1 row in set (0.00 sec)

MariaDB [(none)]>
Run Code Online (Sandbox Code Playgroud)