0
我有一個具有超過3000行代碼的存儲過程,如下所示。它是一個驗證業務規則的過程。對於來自不同表格的不同列有類似的查詢。我不知道如何將這些查詢結合在一起,所以我可以縮小這個過程。下面的查詢是該proc的一部分,並且每列和它們各自的表有許多類似的查詢。我正在使用SQL Server 2005.將多個查詢合併爲一個
INSERT INTO
[Elig].[dbo].[ErrorTable]
(
[SeqId],
[CodeId],
[SubjectArea],
[FieldName],
[TableName],
[ErrorValue],
[ActiveFlag]
)
SELECT
[sd].[SubscriberDataId] AS [SeqId],
@InvalidLength AS [CodeId],
@SubjectArea AS [SubjectArea],
'FacetsGroup' AS [FieldName],
'Facets.SubscriberData',
[sd].[SubscriberFirstName] AS [ErrorValue],
@ActiveFlag AS [ActiveFlag]
FROM
[Facets].[SubscriberData] [sd]
WHERE
ISNUMERIC([FacetsGroup]) = 0 and
NOT EXISTS (SELECT *
FROM Elig.dbo.ErrorTable
WHERE TableName = 'Facets.SubscriberData'
AND FieldName = 'FacetsGroup'
AND ErrorValue = [sd].[FacetsGroup])
爲什麼要壓縮SP? – 2011-03-31 17:50:00
我沒有看到上面的查詢有什麼問題。 「結合」這些查詢的含義是什麼?似乎只有一個查詢。 – Lamak 2011-03-31 17:52:18
我只是想知道3000行代碼不應該影響性能。 – Programmer 2011-03-31 17:55:12