计算MySQL数据库中多个属性的字符串出现次数

时间:2015-04-18 23:59:41

标签: mysql

如何计算MySQL数据库中表的多个属性(在我目前的情况下,我有5个属性)中字符串的出现次数?我可以使用MySQL查询(y / ies)吗?

属性可能具有NULL值,如果这意味着计算时的任何内容。

另外,我在客户端使用PHP,如果MySQL不是找到这个计数的更好方法,我可以使用它,虽然我想知道如何用MySQL完成。

我看到了这个post,它与我想要做的类似,但此解决方案仅适用于计算一个属性/列上的字符串。我需要计算每个字符串的总出现次数(例如:5)我的属性/列。

1 个答案:

答案 0 :(得分:0)

declare @string nvarchar(255) = "string" --String to search for

select COUNT(t1.attr_1) + COUNT(t2.attr_2) + COUNT(t3.attr_3) + COUNT(t4.attr_4) + COUNT(t5.attr_5)
from Table_name t
join Table_name t1 on t1.id = t.id
join Table_name t2 on t2.id = t.id
join Table_name t3 on t3.id = t.id
join Table_name t4 on t4.id = t.id
join Table_name t5 on t5.id = t.id
where t1.attr_1 = @string
and t2.attr_2 = @string
and t2.attr_3 = @string
and t2.attr_4 = @string
and t2.attr_5 = @string