Php 如何计算字符串在mySQL中以逗号分隔的字段中出现的次数?
我的mySQL是这样的,一个Php 如何计算字符串在mySQL中以逗号分隔的字段中出现的次数?,php,mysql,Php,Mysql,我的mySQL是这样的,一个id,一个文本,其中包含可能的短语和一些相同的短语,如下所示: id texts 2 abc,fd4g,oigdu,abc,abc 3 ccc,fff,fff,ccc,iop 我的问题是如何使用PHP/mySQL显示 每个id 2-abc-3次 2-fd4g-1次 2-oigdu-1次 3-ccc-2次 3-fff-2次 3-iop-1次 或者通过文本进行搜索 abc-2倍-2 fd4g-1次-2次 oigdu-1倍-2 ccc-2
id
,一个文本
,其中包含可能的短语和一些相同的短语,如下所示:
id texts
2 abc,fd4g,oigdu,abc,abc
3 ccc,fff,fff,ccc,iop
我的问题是如何使用PHP/mySQL显示
2-abc-3次
2-fd4g-1次
2-oigdu-1次
3-ccc-2次
3-fff-2次
3-iop-1次
abc-2倍-2
fd4g-1次-2次
oigdu-1倍-2
ccc-2次-3次
fff-2次-3次
iop-1倍-3
id texts
2 abc
2 fd4g
2 oigdu
2 abc
2 abc
3 ccc
3 fff
3 fff
3 ccc
3 iop
这会更容易吗?第二种结构会更容易。但是您不应该命名第一列
id
,因为id
-字段通常具有唯一键
值,这意味着只有自动递增的值。你有很多倍于同一个数字,所以你知道它显然不是唯一的,而是不同的
使用另一个查询,您可以运行
SELECT id, texts, COUNT(*) FROM tbl group by id, texts
你的结果是
2 | abc | 3
2 | fd4g | 1
依此类推。第二种结构会更容易。但是您不应该命名第一列
id
,因为id
-字段通常具有唯一键
值,这意味着只有自动递增的值。你有很多倍于同一个数字,所以你知道它显然不是唯一的,而是不同的
使用另一个查询,您可以运行
SELECT id, texts, COUNT(*) FROM tbl group by id, texts
你的结果是
2 | abc | 3
2 | fd4g | 1
依此类推。第二种结构会更容易。但是您不应该命名第一列
id
,因为id
-字段通常具有唯一键
值,这意味着只有自动递增的值。你有很多倍于同一个数字,所以你知道它显然不是唯一的,而是不同的
使用另一个查询,您可以运行
SELECT id, texts, COUNT(*) FROM tbl group by id, texts
你的结果是
2 | abc | 3
2 | fd4g | 1
依此类推。第二种结构会更容易。但是您不应该命名第一列
id
,因为id
-字段通常具有唯一键
值,这意味着只有自动递增的值。你有很多倍于同一个数字,所以你知道它显然不是唯一的,而是不同的
使用另一个查询,您可以运行
SELECT id, texts, COUNT(*) FROM tbl group by id, texts
你的结果是
2 | abc | 3
2 | fd4g | 1
依此类推。您可以通过执行此代码获得相同值的计数
按文本从表组中选择id、text、count(id)
执行此代码可以获得相同值的计数
按文本从表组中选择id、text、count(id)
执行此代码可以获得相同值的计数
按文本从表组中选择id、text、count(id)
执行此代码可以获得相同值的计数
按文本从表组中选择id、文本、计数(id)
到目前为止有任何尝试吗?您建议的结构应该更易于处理。使用您建议的结构,您可以通过文本从表组中无限地选择COUNT(id)
@Xalloumokkelos。您无法直接使用SQL完成您想要的任务(它不是为此而构建的)。您将需要从SQL中引入行,并在代码中执行字符串计数。到目前为止,该线程的任何尝试都已得到响应?您建议的结构应该更易于处理。使用您建议的结构,您可以通过文本从表组中无限地选择COUNT(id)
@Xalloumokkelos。您无法直接使用SQL完成您想要的任务(它不是为此而构建的)。您将需要从SQL中引入行,并在代码中执行字符串计数。到目前为止,该线程的任何尝试都已得到响应?您建议的结构应该更易于处理。使用您建议的结构,您可以通过文本从表组中无限地选择COUNT(id)
@Xalloumokkelos。您无法直接使用SQL完成您想要的任务(它不是为此而构建的)。您将需要从SQL中引入行,并在代码中执行字符串计数。到目前为止,该线程的任何尝试都已得到响应?您建议的结构应该更易于处理。使用您建议的结构,您可以通过文本从表组中无限地选择COUNT(id)
@Xalloumokkelos。您无法直接使用SQL完成您想要的任务(它不是为此而构建的)。您将需要从SQL中引入行,并在代码中执行字符串计数。此线程也已被应答