我有一個名為顏色的列,其中列出了一些顏色,用分號分隔。
我想在我的選擇陳述句中包含一種創建列的方法,該列計算每一行的分號。
這是示例輸出

假設我們必須使用的唯一列是名為 SampleTable 的表中的顏色
uj5u.com熱心網友回復:
試試這個查詢
select Colors, LENGTH(Colors)- LENGTH(REPLACE(Colors, ';', '')) as CountSemiColon from table_name
uj5u.com熱心網友回復:
您可以;使用此示例僅計算符號,here find count signl
select host, (CHAR_LENGTH(host) - CHAR_LENGTH(REPLACE(host, 'l', ''))) / CHAR_LENGTH('l') AS cnt from user;
----------- --------
| host | cnt |
----------- --------
| 127.0.0.1 | 0.0000 |
| honeypot | 0.0000 |
| honeypot | 0.0000 |
| localhost | 2.0000 |
| localhost | 2.0000 |
----------- --------
5 rows in set (0.00 sec)
在這個答案中找到示例
uj5u.com熱心網友回復:
嘗試這個 :
SELECT colors,
ROUND ((LENGTH(colors) - LENGTH(REPLACE(colors, ';', ''))) / LENGTH(';'))
AS char_count
FROM table_name
uj5u.com熱心網友回復:
您也可以使用 IF 來處理 null (count = 0) 的情況。
從 SampleTable 中選擇 Colors, IF (Colors IS NULL, 0, LENGTH(Colors) - LENGTH(REPLACE(Colors, ';', ''))) 作為 CountSemiColon;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/507705.html
