Поиск по сайту:

Разобрать строку, чтобы получить число из большой строки, разделенное подчеркиванием.


Сначала создадим таблицу:

mysql> create table DemoTable1961
   (
   Title text
   );
Query OK, 0 rows affected (0.00 sec)

Вставьте несколько записей в таблицу с помощью команды вставки:

mysql> insert into DemoTable1961 values('You_can_remove_the_string_part_only-10001-But_You_can_not_remove_the_numeric_parts');
Query OK, 1 row affected (0.00 sec)

Отобразите все записи из таблицы с помощью оператора select:

mysql> select * from DemoTable1961;

Это даст следующий результат:

+------------------------------------------------------------------------------------+
| Title                                                                              |
+------------------------------------------------------------------------------------+
| You_can_remove_the_string_part_only-10001-But_You_can_not_remove_the_numeric_parts |
+------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

Вот запрос для реализации CAST() и анализа строки, чтобы получить число из строки:

mysql> select cast(replace(replace('You_can_remove_the_string_part_only-10001-But_You_can_not_remove_the_numeric_parts','You_can_remove_the_string_part_only-',''),
   '-But_You_can_not_remove_the_numeric_parts','') as unsigned) as Output from DemoTable1961;

Это даст следующий результат:

+--------+
| Output |
+--------+
|  10001 |
+--------+
1 row in set (0.00 sec)

Статьи по данной тематике: