除了使用查找和替换之外,使用SSMS还可以轻松地在整个查询中重命名对象。
实施例
SELECT
R.RateId,
R.RateTypeId,
E.emp_lname
FROM
Rates R LEFT OUTER JOIN
tbl_employees E ON R.CreatedByEmployeeId = E.emp_pk
我想要一个简单的方法来改变' R'和' E'贯穿整个查询。显然这个很容易修复,但我找不到一个简单的方法来重构 - >重命名"当查询很长并且有很多子查询时。
当我使用相同的别名进行子查询时,查找和替换对我不起作用,如本示例所示。
SELECT
R.RateId,
R.RateTypeId,
E.emp_lname,
SubQuery.CreationDate
FROM
Rates R LEFT OUTER JOIN
tbl_employees E ON R.CreatedByEmployeeId = E.emp_pk LEFT OUTER JOIN
( --Arbitrary sub query for example purposes
SELECT *
FROM Rates R
WHERE R.CreationDate > '2012-01-01'
)SubQuery ON R.RateId = SubQuery.RateId