영숫자 문자열에서 숫자만 정렬하려면 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)