0

mysql 表中只有一行的示例字段:

詹姆斯是个好孩子詹姆斯他很好而且很活跃

  SELECT FUNCTION(field) 
  FROM table 

应该只返回字段中的唯一单词:

詹姆斯是个好孩子,他很积极

我知道如何使用 PHP 做到这一点。

我希望使用 MYSQL来做到这一点。

请帮忙。

谢谢你。

4

1 回答 1

0

MySQL 对正则表达式的支持很少,所以你得到的解决方案可能有点复杂:

SELECT
  GROUP_CONCAT(word ORDER BY min_n SEPARATOR ' ')
FROM (
  SELECT
    id,
    MIN(numbers.n) min_n,
    SUBSTRING_INDEX(SUBSTRING_INDEX(tableName.st, ' ', numbers.n), ' ', -1) word
  FROM
    numbers INNER JOIN tableName
    ON LENGTH(st)>=LENGTH(REPLACE(st, ' ', ''))+numbers.n-1
  GROUP BY
    id, word
  ) s
GROUP BY
  id

(你需要有一个数字表)。请在此处查看小提琴。

于 2013-09-11T07:53:30.767 回答