我写我通过以下方式这两个查询有什么区别?
UPDATE UPLOAD_TEMP
SET UPLOAD_TEMP.Borr_Add_Req = t2.YesNoResponse,
FROM UPLOAD_TEMP t1
INNER JOIN GB_RequiredFields t2 ON t1.State = t2.StateCode
AND t1.County_Id = t2.CountyId
AND t1.Group_code = t2.Doc_type_group_code
但是它也可以写成这样也
UPDATE UPLOAD_TEMP
SET UPLOAD_TEMP.Borr_Add_Req = t2.YesNoResponse,
FROM UPLOAD_TEMP t1
INNER JOIN GB_RequiredFields t2 ON t1.State = t2.StateCode
WHERE t1.County_Id = t2.CountyId
AND t1.Group_code = t2.Doc_type_group_code
连接查询有两个和之间的差额,以代码的首选方式。
非常旧的风格加入。糟糕的做法。 – gbn 2009-11-23 10:55:45
我也不喜欢它,但谁说坏习惯?这对于DBMS来说并不重要,它只是为了便于阅读,而且主要受到过去如何做的影响。 – Pesse 2009-11-23 11:13:43
@Pesse:好吧,旧式外连接* = = *在SQL Server 2008之后已弃用,因此您将拥有完整的样式错误。 – gbn 2009-11-23 19:35:31