当前位置:数据库 > SQLServer >>

sqlserver2008有三个表A、B、C其中A、B没有相同的主键其中C.IDa=A.IDa ,C.IDb=B.I

追问:插入之后出现了冗余数据我的提问有点不清楚了。我想让A、B表中的数据变化时,C表中的数据也随着改变,同时不要出现数据的冗余
答案:Select A.*,AA.* from A  join (select B.*,C.* from C  join  B on C.IDb==B.I)  AS AA on A.IDa ==AA.I
使用两次表连接即可查询出3个表中的关键列相同的行了。
你可以试验一下。
其他:那你的问题是什么呢 select a.*,b.* c.*  from a,b,c where c.ida=a.ida and c.idb=b.i select * 
from A join C on A.IDa=C.IDa
           join B on C.IDb=B.IDb
where ......
这样查询的速度较高
此外关键是看你要查询什么数据。

上一个:sqlserver2005 锁表问题
下一个:sqlserver查询问题!

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,