================
dbo.trade
id,parentid,name
eg:
1,0,广东
2,1,广州
3,1,深圳
4,0,湖南...
================
dbo.product
id,productname,tradeid,tg要查出
====================================
trade.id,trade.name,(product.tg=1的条数)
eg:
1,广东,10(个)
4,湖南,5...
不知道表达清楚没有,请问如何查询
dbo.trade
id,parentid,name
eg:
1,0,广东
2,1,广州
3,1,深圳
4,0,湖南...
================
dbo.product
id,productname,tradeid,tg要查出
====================================
trade.id,trade.name,(product.tg=1的条数)
eg:
1,广东,10(个)
4,湖南,5...
不知道表达清楚没有,请问如何查询
解决方案 »
- asp.net的问题
- [放分]鸟网站没什么人气了,兄弟们给垫巴垫巴和瞎扯蛋商务通,大家瞧睢
- 请教一条模糊查询的SQL语句
- 看看我这全选jquery有什么问题
- 再次求助,高手帮我啊》》
- ASP.NET中遍历所有控件的问题(在线等)
- linkbutton的问题!!
- 高分请教高手!!!返回字符串问题!在线等待!!!!
- 水晶报表部署以后工具栏的图标不见,并且鼠标移到上面就弹出个登陆窗口
- 急!我的自定义服务器控件上有个按扭,当我把这自定义服务器控件放在页面最前端,下面还有一TextBox(AutoPostBack=true),我在TextBox回车
- 工厂设计模式有点不懂
- 如何为treeview中某个节点的添加响应函数
from trade
group by id,name试试
trade.id,trade.name,(product.tg=1的条数)
select t.id,t.name,count(tg)
from trade as t,product as p
where p.tg=1 and t.id = p.tradeid
group by t.name
select
a.id,a.name,count(b.tg)
from
trade a left join product b
on
a.id=b.tradeid
where
b.tg=1
group by
a.id,a.name
where b.tg=1
group by a.id,a.name
select distinct(p.tradeid),t.name,sum(p.tradeid)
from product p left outer join trade t on p.tradeid=t.id
group by p.tradeid,t.name
select distinct(p.tradeid),t.name,count(p.tradeid)
from product p left outer join trade t on p.tradeid=t.id
where p.tag=1
group by p.tradeid,t.name
from trade inner join product
on trade.id = product.tradeid
where product.tg = 1
group by trade.id, trade.name
dbo.trade
字段:id,parentid,name
数据:
1,0,广东
2,1,广州
3,1,深圳
4,0,湖南
5,4,衡阳
----------------------------
dbo.product
字段:id,productname,trade(此trade为dbo.trade.id,此parentid!=0,后面要得到的是parentid==0)
数据:
1,沙发,2
2,板凳,3
3,椅子,5
4,桌子,5
5,麻将桌,5
---------------------------
查询结果应该为
1,广东,2
4,湖南,3
共5个产品,广东2个,湖南3个....
1,0,广东
2,1,广州
3,1,深圳
4,0,湖南
5,4,衡阳
上面是trade的数据
而产品表中trade是dbo.trade.id 且parentid!=0
1,沙发,2 (为广州,而要得到的数据是整个广东的)
2,板凳,3
3,椅子,5
4,桌子,5
5,麻将桌,5
所以结果应该是
1,广东,2
4,湖南,3
(select
a.id,a.parentid,count(*)num
from
trade a right join product b
on
a.id=b.tradeid
where
a.parentid<>0
group by
a.id,a.parentid) bb
where aa.id=bb.parentid and aa.parentid=0
group by aa.id,aa.name結果
----------------------------
1 广东 2
4 湖南 3
这样就对了,
俺对复杂的sql查询还是不行 ...
nb 谢谢
-----
他的trade表是tree结构...
这个问题难度不大挺费事儿...等有空的来给你写吧...闪...