这个问题没人能解决吗?奇怪了!
id a b c d e
1 1 3 4 6 NULL
2 2 3 4 NULL NULL
3 1 2 3 NULL NULL
4 2 6 NULL NULL NULL
5 2 3 4 5 NULL
6 2 3 5 NULL NULL
7 1 2 3 4 6
8 1 3 4 5 6
9 1 NULL NULL NULL NULL
是一个表,表名是shiyan。
id a b c
1 1 3 4
2 1 3 6
3 1 4 6
4 2 3 4
5 3 4 6
也是一个表,表名是shiYAN,
要求统计出SHIYAN中每一行的是不在shiyan中有,如果有,就加一,还是以1 3 4为例,看看它是不是在shiyan表中的每一行都存在,只要某一行存在,计数就加一,不用考虑1 3 4 在shiyan中各行的顺序,(不管他们的顺序是1 3 4还是1 4 3,还是4 3 1),只要有就行。1 3 4与shiyan中的第一行比较,然后与第二行比较,...,一直到第九行为之,总共有3次,接下来1 3 6 与shiyan中的第一行比较,然后第二行,...,一直到第九行,依次类推
结果是:
id a b c 个数
1 1 3 4 3
2 1 3 6 3
3 1 4 6 3
4 2 3 4 3
5 3 4 6 3
[解决办法]
http://community.csdn.net/Expert/topic/5300/5300230.xml?temp=7.935733E-02
[解决办法]
select *,
num=(select sum(num) from
(
select
num =
(select count(distinct a) from
(select a union all select b union all select c union all select d union all select e) tmpA
where tmpA.a in(B.a, B.b, B.c)) / 3
from A
) tmp)
from B