簡體   English   中英

計算一欄中所有出現的文本

[英]Count all occurrences of text in a column

我想計算varchar(200)列中某個特定單詞的所有出現次數。

我的數據是這樣的:

ID    MyText
---   --------------------------------------
1     Hello how are you doing? Hello again.
2     This is great.
3     Hello my special person.

因此,我希望SQL執行類似'%Hello%'的操作並返回數字3。我現在不在乎例如包含部分單詞,並且現在不關心通配符。 我僅需要進行一些簡單的測試來驗證某些內容。

WITH T(ID,MyText) AS
(
SELECT 1, 'Hello how are you doing? Hello again.' UNION ALL
SELECT 2, 'This is great.' UNION ALL
SELECT 3, 'Hello my special person.'
)
SELECT *, 
       (LEN(MyText) - LEN(REPLACE(MyText, 'Hello', ''))) / LEN('Hello') AS Num
FROM T

要么

SELECT  SUM((LEN(MyText) - LEN(REPLACE(MyText, 'Hello', ''))) / LEN('Hello'))
FROM T

以獲得合計結果

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM