有一个张表:(公司客户交易表),有公司甲乙丙丁,客户甲乙丙丁,可以相互交易,现在希望得到
公司 | 客户 | 交易额
公司甲| 客户乙 | 3000
公司甲| 客户丙 |0
公司丁| 客户甲 |200
公司乙| 客户丁|100
**** ***** ****
省略现在希望得到:跟公司甲乙丙丁均发生过交易(交易额>0)的客户,如何编写这个sql语句?
公司 | 客户 | 交易额
公司甲| 客户乙 | 3000
公司甲| 客户丙 |0
公司丁| 客户甲 |200
公司乙| 客户丁|100
**** ***** ****
省略现在希望得到:跟公司甲乙丙丁均发生过交易(交易额>0)的客户,如何编写这个sql语句?
公司客户交易表: gskhjyb (gs,kh,jye)
客户表: khb (kh)
公司表: gsb (gs)
---------- ---------- ----------
丁 丙 3000
甲 丙 0
甲 乙 3000SQL> ed
已写入 file afiedt.buf 1 select kh
2 from gskhjyb
3 where gs in ('甲','丁') and jye>0
4 group by kh
5* having count(distinct gs)=2
SQL> /KH
----------
丙这样查是否符合你的要求
公司 | 客户 | 交易额
公司甲| 客户乙 | 3000
公司甲| 客户丙 |0
公司丁| 客户甲 |200
公司乙| 客户丁|100
**** ***** ****
省略 现在希望得到: 跟公司甲乙丙丁均发生过交易(交易额>0)的客户,如何编写这个sql语句?
select com,cum,number,comnum from (
select com,cum,number,count(distinct(com)) over (partiton by cum) comnum from table)
where comnum >=4 and number>0
count求和 distinct没有重复值可惜access数据库不支持
啊,竟然是access数据库,晕倒!呵呵,还以为是oracle数据库呢!