mYsqlの文字の長さで文字列を並べ替えますか?
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)
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです-
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クエリ?
このために、ORDERBYCASEステートメントを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable ( DueDate date ); Query OK, 0 rows affected (0.56 sec) 注 −現在の日付が2019-07-22だとします。 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('2019-03-10'); Query OK, 1 row affected (0
-
MySQLクエリを複数のIDで並べ替えますか?
これには、ORDER BY FIELD()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable( ClientId varchar(40), ClientName varchar(40) ); Query OK, 0 rows affected (0.55 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('987_John','John'); Q