2014-10-30 60 views
0

我想要搜索具有连接值的表中的特定列,以查找该列中发生的最大连接数。对于任何建议谢谢。MySQL如何查找表的连接字段的最大数量?

这是我的表结构:

| 电子邮件


johon | ab @ gmail.com,c.k @ n.com,


Mike | m.new @ yahoo.com,l.me @ gmail.com,XY @ z.com,


现在我想找到发生在表中的电子邮件列串联的最大数量。

+4

第一:这是糟糕的DB设计。第二:计算逗号 – 2014-10-30 10:44:06

回答

3

我假设你正在计算列表中元素的数量。这是不好的数据库设计。您应该使用联结表来代替。但是,有时候,我们无法控制设计。

这里是做计数的方法:

select (length(email) - length(replace(email, ',', '')) as NumEmails 

我注意到,名单逗号结尾。如果没有,你需要+ 1