我已经使用两个表的内连接编写了 SQL 查询。语法是正确的,但是当我执行它时,它没有产生所需的输出。
如何在 SQL 中调试它的逻辑部分。如果是 PL/SQL,我们可以使用 DBMS_OUPUT.put_line() 或使用单步调试器来找出逻辑是否正常工作。
如何在 SQL 中做类似的事情。
感谢您的回答。
您可以像调试 PL/SQL 程序一样调试 SQL 语句 - 通过将其分解成更小的块,并查看实际行为是否与预期行为匹配。
例如,如果您有这样的查询:
SELECT a, b + c
FROM x JOIN y ON (x.id = y.id);
而你得到的结果不是你所期望的,你可能首先运行这两个查询:
SELECT id, a, b FROM y;
SELECT id, c FROM y;
检查结果,然后在脑海中“加入”结果(即在两个结果集中查找 ID 匹配的所有行)。
在此过程中,您会发现查询没有返回您期望的结果的原因——或者,您首先会发现您的预期结果是错误的。