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

MySQLのlength()とchar_length()?


char_length()を使用して、文字列の長さを表示できます。パラメータとして含まれる文字列の長さを取得する例を見てみましょう。

mysql> select char_length('John');

以下は出力です。

+---------------------+
| char_length('John') |
+---------------------+
| 4                   |
+---------------------+
1 row in set (0.00 sec)

length()関数を使用して、バイト単位で測定された文字列の長さを表示できます。多くの場合、文字とバイトの長さは同じです。

これがlength()の例です

mysql> select length('Tim');

以下は出力です。

+---------------------+
| length('Tim')       |
+---------------------+
| 3                   |
+---------------------+
1 row in set (0.00 sec)

length()とchar_length()は、文字列で同じ結果を返します。 length()関数は、Unicodeを適用するときに異なる長さを提供します。列名にユニコードがあるとします。Unicodeでは、すべての1文字が2バイトかかります。

例を見てみましょう-

mysql> create table LengthAndCharLengthDemo
-> (
-> FirstName varchar(200),
-> SecondName varchar(255) unicode
-> );
Query OK, 0 rows affected (0.49 sec)

テーブルにレコードを挿入します。

mysql> insert into LengthAndCharLengthDemo values('John','Ritter');
Query OK, 1 row affected (0.22 sec)

selectを使用してテーブルのすべてのレコードを表示します。

mysql> select *from LengthAndCharLengthDemo;

これが出力です。

+-----------+------------+
| FirstName | SecondName |
+-----------+------------+
| John      | Ritter     |
+-----------+------------+
1 row in set (0.00 sec)

長さを取得しましょう。

mysql> select char_length(FirstName),length(Secondname) from LengthAndCharLengthDemo
-> where FirstName='John' and Secondname='John';

これが出力です。

+------------------------+--------------------+
| char_length(FirstName) | length(SecondName) |
+------------------------+--------------------+
| 4                      | 8                  |
+------------------------+--------------------+
1 row in set (0.70 sec)

上記の出力では、length()関数がユニコードのために8バイトを返すのに対し、char_length()は4バイトしか返さないことがわかります。


  1. MySQLでHAVINGLENGTH(field)を実装するにはどうすればよいですか?

    まずテーブルを作成しましょう- mysql> create table DemoTable (    Title text ); Query OK, 0 rows affected (0.39 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('Introduction to MySQL'); Query OK, 1 row affected (0.11 sec) mysql> insert into DemoTable values(&#

  2. MySQLでDOUBLEの長さを実装および設定する

    MySQLでDOUBLEを実装するための構文は、次のとおりです- create table yourTableName      (      yourColumnName double(5,2) unsigned );を作成します まずテーブルを作成しましょう- mysql> create table DemoTable1814      (      Amount double(5,2) unsigned      ); Query