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バイトしか返さないことがわかります。
-
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(
-
MySQLでDOUBLEの長さを実装および設定する
MySQLでDOUBLEを実装するための構文は、次のとおりです- create table yourTableName ( yourColumnName double(5,2) unsigned );を作成します まずテーブルを作成しましょう- mysql> create table DemoTable1814 ( Amount double(5,2) unsigned ); Query