如何使用 MySQL 查询查找列中特定 ID 的字符串计数?
mysqlmysqli database
为此,请使用 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)
现在您可以使用 insert 命令在表中插入一些记录 −
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)
以下是使用 MySQL 查询查找列中特定 ID 的字符串计数的查询。我们在这里检查 ID 1 −
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)