日期:2014-05-17  浏览次数:20489 次

sqlserver 查询 语句...
表A 字段:id,title,coltag。   title是标题名称,coltag是记录表B中的tag字段
表B 字段:tag,name,parentTag。 tag是栏目代码,name是栏目名称,parentTag是记录父栏目(tag)


现在想要查询的数据是 查询表A中的所有的标题,条件是根据A表中的coltag 到B表查询parentTag下的所有子栏目tag的数据,
也就是说根据父栏目中的查询所有栏目的父栏目是A表中传过来的coltag,
语句我这样写了下 是有问题的:select * from A  where coltag in (select * from B where parentTag='yfjd')

望高手指导下...
------解决方案--------------------
select * from A where coltag in (select tag from B where parentTag='yfjd')

------解决方案--------------------
select a.id,a.title from a inner join b on a.coltag = b.tag and b.parentTag='yfjd'
------解决方案--------------------
select * from A where  exists (select * from B where a.coltag = parentTag='yfjd')

------解决方案--------------------
select * from A where coltag in (select tag from B where parentTag='yfjd')