以下代码在Oracle和SQL Server 2008这两个不同的环境中运行时会产生不同的记录数。两个数据库中的表都是相同的。
在SQL中是否有任何方法可以使用类似断点的机制检查代码的每一步中的记录计数,这样我就能找到错误?
代码:
SELECT
col1, col2, col3
CASE
WHEN col4 IS NULL THEN SUM(xamt) ELSE 0
END) AS xamt,
FROM
MYTABLE as A
LEFT JOIN
LTDTABLE as B ON A.COL1 = B.COL1
WHERE
A.RECORD_ID = 'S1'
AND B.ZSTATUS = ''
AND (A..REFERRED_BY = '')
OR (B.ZSTATUS = '')
AND A.REFERRED_BY <> 'ZED'
由于
答案 0 :(得分:0)
组功能在Oracle和MSSQL上的运行方式不同。与MSSQL不同,Oracle不会忽略null
值。
这也值得检查整理,以及涂层实际上是什么名称(例如,MySQL中的utf8并不是完整的utf8)。