Truco para contar palabras en MySQL

MySQL no tienen ninguna función para contar las palabras de una columna. Con este sencillo truco lo podemos resolver:

SELECT SUM( LENGTH(columna) - LENGTH(REPLACE(columna, ' ', ''))+1)
FROM tabla



Básicamente se trata de contar el número de espacios.

Tags: none

Noticias similares:
  1. Ventayuka el 1 de Octubre de 2008

    Bastante ingenioso, pero no funciona en todos los casos. ¿que pasa si existe más de un espacio entre las palabras o a final de las palabras?, algo así:

    “HOLA COLEGA” => 2 palabras (bien!)
    “HOLA COLEGA CAPULLETE” => 3 palabras (bien!)
    “HOLA COLEGA CAPULLETE ” => 4 palabras (no tan bien)
    “HOLA COLEGA CAPULLETE ” => 5 palabras (no tan bien)
    ” TE PASAS ” => 12 palabras (no tan bien)

    Podría mejorarse algo usando la función TRIM de MySQL pero eso solo eliminaría el problema en los espacios del principio y del final. Pero al menos es algo.


Comenta