Как вырезать часть строки с помощью запроса MySQL?
Для этого используйте функцию substring_index() из MySQL. Сначала создадим таблицу:
mysql> create table DemoTable
-> (
-> StudentId varchar(100)
-> );
Query OK, 0 rows affected (0.60 sec)
Вставьте несколько записей в таблицу с помощью команды вставки:
mysql> insert into DemoTable values('STU-1011');
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values('STU-95968686');
Query OK, 1 row affected (0.17 sec)
Отобразите все записи из таблицы с помощью оператора select:
mysql> select *from DemoTable;
Это даст следующий результат:
+--------------+
| StudentId |
+--------------+
| STU-1011 |
| STU-95968686 |
+--------------+
2 rows in set (0.00 sec)
Ниже приведен запрос на вырезание части строки в MySQL перед дефисом (-):
mysql> select substring_index(substring(StudentId, instr(StudentId, "-")+1), " ", 1) from DemoTable;
Это приведет к следующему выводу, отображающему часть строки перед дефисом (-)
+------------------------------------------------------------------------+
| substring_index(substring(StudentId, instr(StudentId, "-")+1), " ", 1) |
+------------------------------------------------------------------------+
| 1011 |
| 95968686 |
+------------------------------------------------------------------------+
2 rows in set (0.02 sec)