如何使用 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)

現在,可以使用 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)

以下是查詢以在列中找到特定 ID 的字串計數的 MySQL 查詢。我們在這裡檢查 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)

更新日期:30-Jul-2019

131 次瀏覽

啟動您的職業生涯

完成課程,獲得認證

開始
廣告