当前位置:数据库 > MySQL >>

如何查询mysql表中的相似度。

mysql表中有数据类似: name | value a |1 a |2 a |3 b | 1 b | 3 b | 5 c | 2 c | 4 c | 5 如何查找b中有多少和a内容相似,c中有多少和a相似。数据表比较大,遍历查询的方法就算了。谢谢。
补充:感谢朋友回答问题。可能我意思没有说清楚。我是想查出哪个name中的value和a中的value相同的最多。

希望查出的结果是
b | 2
c | 1
追问:你好。只有一张表,是把t1和t2写成一样的么?谢谢。我所有的数据是在一张表(比如aaa)是不是写成。select t1.name,count(*) from 'aaa' t1 left join 'aaa' t2 on t1.name!=t2.name and t1.value=t2.value where t2.name='a' group by t1.name asc limit 1;
答案:select t1.name,count(*) from tbname t1 left join tbname t2 on t1.name!=t2.name and t1.value=t2.value where t2.name='a' group by t1.name asc limit 1;

测试通过,有疑问可以追问
其他:不好意思,是我没看清楚
select count(*) from 表名 where name='b' and vlaue in(select value from 表 where name='a');
//name等于b的记录中value与a的value相同的数据量
select count(*) from 表名 where name='c' and vlaue in(select value from 表 where name='a');
//name等于c的记录中value与a的value相同的数据量 

上一个:java对mysql数据库备份后,它的备份记录怎么显示查出来啊。 求告诉、
下一个:mysql 查看表有没有被锁

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,