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

MySQLクエリを使用して列内の特定のIDの文字列数を見つける方法は?


これには、MySQLのCHAR_LENGTH()関数を使用します。まずテーブルを作成しましょう-

mysql> create table DemoTable
   (
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   Subject longtext
   );
Query OK, 0 rows affected (1.17 sec)

これで、挿入コマンド-

を使用してテーブルにいくつかのレコードを挿入できます。
mysql> insert into DemoTable(Subject) values('MySQL,MongoDB');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable(Subject) values('MySQL,MongoDB');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable(Subject) values('MongoDB');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable(Subject) values('MySQL');
Query OK, 1 row affected (0.15 sec)
Display all records from the table using select statement :
mysql> select *from DemoTable;

出力

+----+---------------+
| Id | Subject       |
+----+---------------+
| 1  | MySQL,MongoDB |
| 2  | MySQL,MongoDB |
| 3  | MongoDB       |
| 4  | MySQL         |
+----+---------------+
4 rows in set (0.00 sec)

以下は、列内の特定のIDのMySQLクエリで文字列カウントを検索するためのクエリです。ここでID1をチェックしています-

mysql> select Id,char_length(Subject) - char_length(REPLACE((Subject), ',', ''))+1 
   AS FreqSubject from DemoTable WHERE char_length(Subject) > 0 AND Id = 1;
>

出力

+----+-------------+
| Id | FreqSubject |
+----+-------------+
| 1  | 2           |
+----+-------------+
1 row in set (0.02 sec)

  1. SUBSTRING_INDEXを使用してMySQLで文字列を分割する方法は?

    まずテーブルを作成しましょう- mysql> create table DemoTable1465    -> (    -> Name varchar(40)    -> ); Query OK, 0 rows affected (0.54 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1465 values('Chris Brown'); Query OK, 1 row affected (0.1

  2. MySQL列の特定の文字を置き換える方法は?

    特定の文字を置き換えるには、REPLACE()を使用し、更新するには、UPDATEコマンドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1899    (    Code varchar(20)    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1899 values('John_123')