读书人

请问一个关联查询有关问题

发布时间: 2013-06-25 23:45:41 作者: rapoo

请教一个关联查询问题
3个表关联查询,t1,t2,t3 条件是、
第一:以t1表记录为准 t1.id=t2.id select * from t1 left join t2 on t1.id=t2.id
第二:t2.sid =t3.sid
这个sql应该如何写呢?
[解决办法]

引用:
不对呀,第一个条件查询 我查询2000多条记录 加上后面的条件 我查出14万条记录了 按我的想法 应该加上第2个条件也是查询出2000多条记录呢?
因为你用了leftjoin 改成inner join试试
[解决办法]
引用:
SELECT * FROM
GPRXSJB t2 LEFT JOIN dbo.GPZB t3 ON t2.T_GPZB_ID=t3.T_GPZB_ID
INNER JOIN dbo.GSCWZYZB t1 ON t1.T_GSZB_ID=t3.T_GSZB_ID
WHERE t2.FSRQ='2013-05-20'

还是不对呀,我这里 SELECT * FROM
GPRXSJB t2 LEFT JOIN dbo.GPZB t3 ON t2.T_GPZB_ID=t3.T_GPZB_ID WHERE t2.FSRQ='2013-05-20'查询出来是2000多条记录
但是 加上后面的条件就还是14W条了
你是T2和T1连还是T3和T1连?要搞清楚关系,我觉得你应该是T1和T2连
[解决办法]

首先检查一下
dbo.GSCWZYZB表 T_GSZB_ID字段是否唯一(主键),如果不是,那关联起来肯定不止2000多条
从你上面说的加了这个表数据就14w,所以很有可能是我说的那原因

读书人网 >SQL Server

热点推荐