Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

como contar a ocorrência de uma palavra em várias linhas de um banco de dados mysql


Você pode adicionar a contagem em ORDER BY cláusula.

Tente desta forma:
SELECT *,(LENGTH(data) - LENGTH(REPLACE(data, 'key', ''))) / LENGTH('key') as cnt
FROM TableName
ORDER BY ((LENGTH(data) - LENGTH(REPLACE(data, 'key', ''))) / LENGTH('key')) DESC

Para obter os registros de 2 ocorrências, você pode usar HAVING cláusula:
SELECT *,(LENGTH(data) - LENGTH(REPLACE(data, 'key', ''))) / LENGTH('key') as cnt
FROM TableName
HAVING cnt=2
ORDER BY ((LENGTH(data) - LENGTH(REPLACE(data, 'key', ''))) / LENGTH('key')) DESC