我正在进行一些SQL优化,但我的SQL fu可以使用一些改进......
为什么在子查询上加入,这可能只是一个直接的内连接,还是我错过了什么?
-- Why do a join and a subquery?
-- INNER JOIN (
-- SELECT client_id, session_id, id, customer_id, validity, machine_id,
-- utc_date_completed, itemStatus, totalValue, utc_date_updated,
-- itemValue, itemId, itemName, customField1, customField2, itemPage, itemCurrency
-- FROM data.dashboard WITH(NOLOCK)
-- WHERE client_id = @client_id
-- ) d ON cm.client_id = d.client_id
INNER JOIN data.dashboard AS d ON cm.client_id = d.client_id AND d.client_id = @client_id
答案 0 :(得分:1)
是的,功能上它们是相同的,你应该有更好的表现INNER JOIN
。检查执行计划的性能。
它更具可读性和可维护性。