sql >> Database teknologi >  >> RDS >> Mysql

Fjern en del af strengen inklusive et specifikt tegn fra en streng ved hjælp af MySQL

Ifølge dokumentationen :

 SUBSTRING_INDEX(str,delim,count)

I dit eksempel er str 'STACK\HYUUM.ROOOO'. Vær forsigtig med '\', det skal escapes, fordi det er en speciel karakter. For at gøre det skal du erstatte '\' med '\\'. delim er '\\' (også undsluppet) og antallet er -1, fordi du vil have den rigtige del af delim.

Eksempel:

mysql> SELECT * FROM foo;
+-------------------+
| name              |
+-------------------+
| STACK\HYUUM.ROOOO |
+-------------------+
1 row in set (0.00 sec)

mysql> SELECT SUBSTRING_INDEX(name, '\\', -1) AS foo FROM foo;
+-------------+
| foo         |
+-------------+
| HYUUM.ROOOO |
+-------------+
1 row in set (0.00 sec)

Eller et enklere eksempel:

SELECT SUBSTRING_INDEX('STACK\\HYUUM.ROOOO', '\\', -1);

Glem ikke at undslippe omvendt skråstreg i 'STACK\HYUUM.ROOOO'.



  1. Hvordan kan jeg finde ikke-ASCII-tegn i MySQL?

  2. SQLite Vælg

  3. Hvorfor er '2'> '10'?

  4. Jeg kan ikke starte Mysql 5.6 server på grund af TIMESTAMP med implicit DEFAULT værdi er forældet Fejl?