MySQL の CHAR_LENGTH() 関数を使用すると、文字長で並べ替えることができます。この関数は、次の文字列の文字数、つまり 4 を返します -
AMIT
文字列を文字長で並べ替える場合、構文は次のとおりです -
select *from yourTableName order by CHAR_LENGTH(yourColumnName);
上記の概念を理解するために、次のようにします。まずテーブルを作成します。以下はテーブルを作成するクエリです -
mysql> create table OrderByCharacterLength −> ( −> BookName varchar(200) −> ); Query OK, 0 rows affected (1.97 sec)
insert コマンドを使用してテーブルにいくつかのレコードを挿入します。クエリは次のとおりです。 -
mysql> insert into OrderByCharacterLength values('Let us C'); Query OK, 1 row affected (0.31 sec) mysql> insert into OrderByCharacterLength values('Introduction to C'); Query OK, 1 row affected (0.20 sec) mysql> insert into OrderByCharacterLength values('Data Structure And Algorithm in Java '); Query OK, 1 row affected (0.13 sec) mysql> insert into OrderByCharacterLength values('C in Depth'); Query OK, 1 row affected (0.17 sec) mysql> insert into OrderByCharacterLength values('Java Projects'); Query OK, 1 row affected (0.23 sec)
すべてのレコードを上の表に挿入された順に表示してみましょう。クエリは次のとおりです -
mysql> select *from OrderByCharacterLength;
出力は次のとおりです -
+---------------------------------------+ | BookName | +---------------------------------------+ | Let us C | | Introduction to C | | Data Structure And Algorithm in Java | | C in Depth | | Java Projects | +---------------------------------------+ 5 rows in set (0.00 sec)
これは、すべてのレコードを文字長ごとに並べて表示するクエリです。列値に最小の長さがある場合、その値の優先順位が高くなり、最初に表示されます。
クエリは次のとおりです -
mysql> select *from OrderByCharacterLength order by CHAR_LENGTH(BookName);
出力は次のとおりです -
+---------------------------------------+ | BookName | +---------------------------------------+ | Let us C | | C in Depth | | Java Projects | | Introduction to C | | Data Structure And Algorithm in Java | +---------------------------------------+ 5 rows in set (0.00 sec)
以上がmYsqlで文字列を文字長でソートしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。