色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql 字符串出現次數

阮建安2年前14瀏覽0評論

對于MySQL數據庫中的字符串,經常需要獲取其中某個字符或字符串出現的次數,這時候可以使用MySQL內置的函數來實現這個功能。

SELECT 
LENGTH(`str`) - LENGTH(REPLACE(`str`, 'a', '')) AS `count_a`,
LENGTH(`str`) - LENGTH(REPLACE(`str`, 'hello', '')) AS `count_hello`
FROM `table`
WHERE `id` = 1;

以上代碼中,將查詢出`table`表中`id`為1的記錄中字符串`str`中字符`'a'`和字符串`'hello'`分別出現的次數。

其中`REPLACE()`函數用來將字符串`str`中所有字符`'a'`或字符串`'hello'`替換為空,再計算替換前后字符串長度的差值即可得到對應字符或字符串出現的次數。

需要注意的是,如果不關心字符或字符串是否與其他字符或字符串重疊,則可以使用以下代碼來計算出現次數:

SELECT (LENGTH(`str`) - LENGTH(REPLACE(`str`, 'a', ''))) / LENGTH('a') AS `count_a`,
(LENGTH(`str`) - LENGTH(REPLACE(`str`, 'hello', ''))) / LENGTH('hello') AS `count_hello`
FROM `table`
WHERE `id` = 1;

這里除以了字符或字符串自身的長度,而非替換后字符串長度的差值,可以避免重疊的情況導致計算錯誤。