0
我有一個更新查詢,我在Access 2013中創建了它。我有一個包含超過150萬條記錄的表,我嘗試運行更新查詢但它有時需要永久,特別是如果我正在更新數千行。所以我想通了,我會在訪問中使用傳遞選項,但是當我嘗試這樣做時,我的查詢中出現語法錯誤,因爲訪問語法與SQL Server中的語法不同。我怎麼能將我的查詢轉換爲sql服務器,所以我的查詢不會永遠運行。將IIF語句從訪問轉換爲T-SQL SQL Server(傳遞)
這是我最初的訪問查詢,我想將其轉換爲T-SQL。
UPDATE CLAIM
INNER JOIN 06 ON [06].ID = Claim.ID
SET reason_code_01= IIF(reason_code_01 is null,」06」,reason_code_01), reason_code_02= IIF(reason_code_01 <> null,」06」,reason_code_02), reason_code_03= IIF(reason_code_01 <> null,」06」,reason_code_03), reason_code_04= IIF(reason_code_01 <> null,」06」,reason_code_04),overpaid_deduc= IIF(overpaid_deduc is null,[06].[DED AMT],overpaid_deduc), overpaid_deduc2= IIF(overpaid_deduc <>null,[06].[DED AMT],overpaid_deduc2),overpaid_deduc3= IIF(overpaid_deduc <> null,[06].[DED AMT],overpaid_deduc3),overpaid_pay1= IIF(overpaid_pay1 is null,[06].[PAY 1],overpaid_pay1),overpaid_pay2= IIF(overpaid_pay1 <> null,[06].[PAY 1],overpaid_pay2),overpaid_pay3= IIF(overpaid_pay1 <> null,[06].[PAY 1],overpaid_pay3)
WHERE ((([06].sort_order)=1));
我相信這是正確的代碼,因爲我拿過去所有的語法錯誤,但我得到與ReturnRecords屬性設置爲true的傳遞查詢不返回任何記錄錯誤 – SikRikDaRula
@SikRikDaRula:這是正常的和正確的 - UPDATE查詢不會返回記錄,所以您必須將查詢的'ReturnRecords'屬性設置爲False。 – Andre