SQL问题,假设公司表COMPANY中有四个字段id,tel1,tel2,tel3,求统计有电话相同的公司数每个公司都有三个电话号码,如果有其中一个号码相同,就视为这个公司是同一个老板注册的.统计有相同号码的
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/28 07:15:40
SQL问题,假设公司表COMPANY中有四个字段id,tel1,tel2,tel3,求统计有电话相同的公司数每个公司都有三个电话号码,如果有其中一个号码相同,就视为这个公司是同一个老板注册的.统计有相同号码的
SQL问题,假设公司表COMPANY中有四个字段id,tel1,tel2,tel3,求统计有电话相同的公司数
每个公司都有三个电话号码,如果有其中一个号码相同,就视为这个公司是同一个老板注册的.统计有相同号码的公司数
(特别注意的是,如果有号码相同,只统计一次,比如发现A的tel1,B公司的tel2,和C公司tel3都是139000000,那么这三个公司加起来只算一个,换句话说,其实就是统计有两个及两个以上公司的老板数)
----------------------------------------------------------------------------------------
id tel1 tel2 tel3
1 13901 13902 13903
2 13902 13904 13905
3 13903 13906 13907
4 13801 13802 13803
5 13701 13702 13703
6 13701 13704 13705
比如,以上数据,前三个都视为同一个老板注册的;后两个也是同一个老板注册的;
最后统计结果就应该是2
SQL问题,假设公司表COMPANY中有四个字段id,tel1,tel2,tel3,求统计有电话相同的公司数每个公司都有三个电话号码,如果有其中一个号码相同,就视为这个公司是同一个老板注册的.统计有相同号码的
太多的数据没有,针对你给的这些这个应该是对的,你数据多,你自己试一下
select count(distinct a.id) from
(select id,tel1 tel from company union all
select id,tel2 tel from company union all
select id,tel3 tel from company) a,
(select id,tel1 tel from company union all
select id,tel2 tel from company union all
select id,tel3 tel from company) b
where a.tel=b.tel
and a.id<b.id