[英]mysql count occurrences of special character in a field
我想计算一个字段中所有出现的@符号,最初我认为LIKE '%@%'将是要走的路,但如果该字符多次出现在该字段中,它只会将其视为一个。
我可以使用哪些其他方法来计算每次出现的次数?
谢谢。
编辑对于任何需要它的人,这就是我最终使用的作品。
$count = 0;
$sql = mysql_query("SELECT LENGTH(field_name) - LENGTH(REPLACE(field_name,'@','')) AS 'occurs' FROM table_name WHERE field_name LIKE '%@%'");
while ($data = mysql_fetch_assoc($sql)) {
$count += $data['occurs'];
}
echo $count;
select length('aa:bb:cc:dd')-length(replace('aa:bb:cc:dd',':',''));
来源:http: //lists.mysql.com/mysql/215049
您可以通过使用 php.ini 中的 ``substr_count 函数使这更加简单。 见下文。
$message = $row['themessage'];
echo substr_count($message, '@');
这将返回的是数据库中“主题”字段中 @ 出现的次数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.