0
我有一個單詞表和一個短語表。我想要統計每個單詞包含多少個詞組。計算兩個表格之間的匹配
此查詢給我一個(單詞,短語)對列表;我如何獲得計數?有沒有更有效的方法來做到這一點?
選擇words.word,phrases.phrase
從文字左加入短語
上phrases.phrase RLIKE CONCAT( '(^ | [^ AZ])',words.word,「($ | [^ AZ])');
我有一個單詞表和一個短語表。我想要統計每個單詞包含多少個詞組。計算兩個表格之間的匹配
此查詢給我一個(單詞,短語)對列表;我如何獲得計數?有沒有更有效的方法來做到這一點?
選擇words.word,phrases.phrase
從文字左加入短語
上phrases.phrase RLIKE CONCAT( '(^ | [^ AZ])',words.word,「($ | [^ AZ])');
使用現有查詢,您可以添加一個GROUP BY
子句和COUNT
:
SELECT
words.word,
COUNT(phrases.phrase) as Count
FROM
words
LEFT JOIN phrases
ON phrases.phrase RLIKE CONCAT('(^|[^a-z])', words.word, '($|[^a-z])')
GROUP BY
words.word
或者,你可以用一個子查詢,而不是實現這一聯接:
SELECT
words.word,
(SELECT COUNT(*)
FROM phrases
WHERE phrase RLIKE CONCAT('(^|[^a-z])', words.word, '($|[^a-z])')
) AS Count
FROM words