MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLの英数字文字列から数字のみを並べ替えますか?


英数字の文字列から数字のみを並べ替えるには、ORDER BY RIGHT()を使用します。まずテーブルを作成しましょう-

mysql> create table DemoTable1948
   (
   StudentCode varchar(20)
   );
Query OK, 0 rows affected (0.00 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable1948 values('121John_567');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1948 values('Adam_101');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1948 values('Bob_563');
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1948 values('Sam_346');
Query OK, 1 row affected (0.00 sec)

selectステートメントを使用してテーブルのすべてのレコードを表示する-

mysql> select * from DemoTable1948;

これにより、次の出力が生成されます-

+-------------+
| StudentCode |
+-------------+
| 121John_567 |
| Adam_101    |
| Bob_563     |
| Sam_346     |
+-------------+
4 rows in set (0.00 sec)

これは、MySQLの英数字文字列から数字のみを並べ替えるクエリです-

mysql> select * from DemoTable1948
   order by RIGHT(StudentCode,3);

これにより、次の出力が生成されます-

+-------------+
| StudentCode |
+-------------+
| Adam_101    |
| Sam_346     |
| Bob_563     |
| 121John_567 |
+-------------+
4 rows in set (0.00 sec)

  1. MySQLで文字と数字が混在する列から文字値を並べ替えますか?

    最初にテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Code varchar(20)    -> ); Query OK, 0 rows affected (0.70 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('J23'); Query OK, 1 row affected (0.17 sec) mysql>

  2. MySQLで数字と混合された文字列で並べ替えますか?

    場合によってはORDERBYを使用します。テーブルを作成しましょう- mysql> create table demo18 −> ( −> value text −> ); Query OK, 0 rows affected (1.18 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します。 mysql> insert into demo18 values('John Smith'); Query OK, 1 row affected (0.06 sec) mysql> inse