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

MySQLテーブルの列の値をその値の一部で並べ替えますか?


これには、ORDER BY RIGHT()を使用できます。まずテーブルを作成しましょう-

mysql> create table DemoTable
   (
   UserId varchar(100)
   );
Query OK, 0 rows affected (0.33 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values('User1234');
Query OK, 1 row affected (0.07 sec)

mysql> insert into DemoTable values('User9874');
Query OK, 1 row affected (0.06 sec)

mysql> insert into DemoTable values('User9994');
Query OK, 1 row affected (0.04 sec)

mysql> insert into DemoTable values('User1211');
Query OK, 1 row affected (0.20 sec)

mysql> insert into DemoTable values('User1012');
Query OK, 1 row affected (0.79 sec)

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

mysql> select *from DemoTable;

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

+----------+
| UserId |
+----------+
| User1234 |
| User9874 |
| User9994 |
| User1211 |
| User1012 |
+----------+
5 rows in set (0.00 sec)

ケース1 −結果を昇順で表示したい場合。

以下は、MySQLテーブルの列の値をその値の一部で並べ替えるクエリです。

mysql> select *from DemoTable ORDER BY RIGHT(UserId, 4);

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

+----------+
| UserId |
+----------+
| User1012 |
| User1211 |
| User1234 |
| User9874 |
| User9994 |
+----------+
5 rows in set (0.00 sec)

ケース2 −結果を降順で表示したい場合。

以下は、MySQLテーブルの列の値をその値の一部で並べ替えるクエリです-

mysql> select *from DemoTable ORDER BY RIGHT(UserId, 4) DESC;

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

+----------+
| UserId |
+----------+
| User9994 |
| User9874 |
| User1234 |
| User1211 |
| User1012 |
+----------+
5 rows in set (0.00 sec)

  1. MySQLでカスタム開始値を使用して自動インクリメント列を追加します

    作成済みのテーブルに新しい列を追加するには、ALTERTABLEとADDCOLUMNを使用します。 AUTO_INCREMENTを使用して、自動増分カスタム値を設定します。 まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> StudentName varchar(20)    -> ); Query OK, 0 rows affected (0.63 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql

  2. MySQLのデフォルト値をJSONタイプの列に設定しますか?

    デフォルト値を設定するには、次の構文のようにDEFAULT制約を使用します- alter table yourTableName modify column yourColumnName JSON NOT NULL DEFAULT ( JSON_OBJECT() ); テーブルを作成しましょう- mysql> create table demo24 −> ( −> employee_information text −> ) −> ; Query OK, 0 rows affected (1.43 sec) これ