[英]Result from Stored proc different to SSMS Query
我在存儲過程和查詢窗口中有相同的代碼,但得到不同的結果。 唯一的區別是 SP 選擇進入臨時表,然后從臨時表中選擇並且它在 SP 中運行。
SP 沒有參數 - 所以它不是參數嗅探,SP 有 ANSI_NULLS ON。
RecId 和 invoiceOrderRecId 是 bigint,品牌是 nvarchar(10)
SELECT
ZIOH.Brand,
Count(RecId) as NumDispatched
FROM
ZFSINVOICEORDERHISTORY ZIOH
WHERE
ZIOH.DISPATCHDATETIME >= CAST(CURRENT_TIMESTAMP AS DATE)
AND
ZIOH.DISPATCHDATETIME < DATEADD(DD, 1, CAST(CURRENT_TIMESTAMP AS DATE))
AND
ZIOH.INVOICEORDERRECID NOT IN
(SELECT
RecId
FROM
ZFSINVOICEORDER ZIO
WHERE
ZIO.PARTITION = ZIOH.PARTITION)
GROUP BY ZIOH.Brand
ORDER BY ZIOH.Brand
查詢窗口的結果
╔═══════╦═══════════════╗
║ Brand ║ NumDispatched ║
╠═══════╬═══════════════╣
║ CCO ║ 1 ║
║ CVDUK ║ 13 ║
║ FLX ║ 12 ║
║ MSFR ║ 74 ║
║ MSGR ║ 1 ║
║ MSUK ║ 211 ║
║ PIAFR ║ 25 ║
║ PIAUK ║ 129 ║
╚═══════╩═══════════════╝
來自 SP 的結果
╔═══════╦═══════════════╗
║ Brand ║ NumDispatched ║
╠═══════╬═══════════════╣
║ CCO ║ 1 ║
║ CVDUK ║ 7 ║
║ FLX ║ 12 ║
║ MSFR ║ 53 ║
║ MSUK ║ 147 ║
║ PIAFR ║ 21 ║
║ PIAUK ║ 121 ║
╚═══════╩═══════════════╝
一個未提交的事務導致了結果的差異 - 那是一個早晨的損失。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.