小编典典

这两个查询有什么区别?

sql

我正在通过以下方式编写我的联接查询

    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

两者之间是否有任何区别,这是首选的编码方式。


阅读 177

收藏
2021-05-23

共1个答案

小编典典

这是一个古老的参数-是在JOIN子句中指定其他WHERE参数,还是将其指定为单独的WHERE。

我更喜欢 定义那些真正构成JOIN子句中的JOIN以及以后WHERE子句中其他所有内容的参数的方法。对我来说似乎更干净。

但我认为最终在功能上是相同的-实际上,这只是个人喜好问题。

2021-05-23