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

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

如何提取第n個單詞并計算MySQL字符串中出現的單詞?

如何提取第n個單詞并計算MySQL字符串中出現的單詞?

千巷貓影 2019-11-02 10:29:23
我想要一個這樣的mysql查詢:select <second word in text> word, count(*) from table group by word;所有在MySQL中的正則表達式例子來查詢,如果文本的表達式匹配,但不提取文本出的表情。有這樣的語法嗎?
查看完整描述

3 回答

?
蠱毒傳說

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

以下是針對OP的特定問題(提取字符串的第二個單詞)的建議解決方案,但應注意,由于mc0e的回答,在MySQL中不支持實際提取正則表達式匹配。如果確實需要此功能,那么您的選擇基本上是:1)在客戶端的后處理中執行此操作,或2)安裝一個MySQL擴展來支持它。


BenWells幾乎完全正確。根據他的代碼工作,這是一個經過稍微調整的版本:


SUBSTRING(

  sentence,

  LOCATE(' ', sentence) + CHAR_LENGTH(' '),

  LOCATE(' ', sentence,

  ( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )

)

作為一個工作示例,我使用:


SELECT SUBSTRING(

  sentence,

  LOCATE(' ', sentence) + CHAR_LENGTH(' '),

  LOCATE(' ', sentence,

  ( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )

) as string

FROM (SELECT 'THIS IS A TEST' AS sentence) temp

這樣可以成功提取單詞 IS


查看完整回答
反對 回復 2019-11-02
?
冉冉說

TA貢獻1877條經驗 獲得超1個贊

提取句子中第二個單詞的簡短選擇:


SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('THIS IS A TEST', ' ',  2), ' ', -1) as FoundText

SUBSTRING_INDEX的MySQL文檔


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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