亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

計算VARCHAR字段中字符串出現的次數?

計算VARCHAR字段中字符串出現的次數?

躍然一笑 2019-07-03 16:16:40
計算VARCHAR字段中字符串出現的次數?我有一張這樣的桌子:TITLE          |   DESCRIPTION------------------------------------------------test1          |   value blah blah valuetest2          |   value testtest3          |   test test testtest4          |   valuevaluevaluevaluevalue我試圖弄清楚如何返回每個描述中字符串發生的次數。因此,如果我想計算出現‘value’的次數,SQL語句將返回以下內容:TITLE          |   DESCRIPTION                  |   COUNT------------------------------------------------------------test1          |   value blah blah value        |   2test2          |   value test                   |   1test3          |   test test test               |   0test4          |   valuevaluevaluevaluevalue    |   5有什么辦法嗎?我根本不想使用php,只想使用MySQL。
查看完整描述

3 回答

?
萬千封印

TA貢獻1891條經驗 獲得超3個贊

這應該能起作用:

SELECT 
    title,
    description,    
    ROUND (   
        (
            LENGTH(description)
            - LENGTH( REPLACE ( description, "value", "") ) 
        ) / LENGTH("value")        
    ) AS count    
FROM <table>


查看完整回答
反對 回復 2019-07-03
?
胡子哥哥

TA貢獻1825條經驗 獲得超6個贊

試試這個:

 select TITLE,
        (length(DESCRIPTION )-length(replace(DESCRIPTION ,'value','')))/5 as COUNT 
  FROM <table>


SQL Fiddle演示


查看完整回答
反對 回復 2019-07-03
?
蕭十郎

TA貢獻1815條經驗 獲得超13個贊

請讓我知道它是否對你的MySQL也有效。

在sql server中,這是答案。


Declare @t table(TITLE VARCHAR(100), DESCRIPTION VARCHAR(100))


INSERT INTO @t SELECT 'test1', 'value blah blah value' 

INSERT INTO @t SELECT 'test2','value test' 

INSERT INTO @t SELECT 'test3','test test test' 

INSERT INTO @t SELECT 'test4','valuevaluevaluevaluevalue' 



SELECT TITLE,DESCRIPTION,Count = (LEN(DESCRIPTION) - LEN(REPLACE(DESCRIPTION, 'value', '')))/LEN('value') 


FROM @t

結果


TITLE   DESCRIPTION               Count

test1   value blah blah value        2

test2   value test                   1

test3   test test test               0

test4   valuevaluevaluevaluevalue    5

我沒有安裝MySQL,但是我用眼鏡來查找相當于Len的長度取代是一樣的。


因此,MySQL中的等效查詢應該是


SELECT TITLE,DESCRIPTION, (LENGTH(DESCRIPTION) - LENGTH(REPLACE(DESCRIPTION, 'value', '')))/LENGTH('value') AS Count

FROM <yourTable>

請讓我知道它是否對你的MySQL也有效。


查看完整回答
反對 回復 2019-07-03
  • 3 回答
  • 0 關注
  • 728 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號