查询 1 适用于 Oracle JDBC 驱动程序,但查询 2 不能。我不明白为什么。拜托,有人可以帮我吗?
查询 1:
SELECT {fn pi()} FROM table;
Run Code Online (Sandbox Code Playgroud)
查询 2:
SELECT pi() FROM table;
Run Code Online (Sandbox Code Playgroud)
没有本土的 pi()Oracle 中函数。JDBC 驱动程序将简单地用硬编码值替换它。
如果你跑
SELECT {fn pi()} FROM dual;
Run Code Online (Sandbox Code Playgroud)
司机将发送:
SELECT ( 3.141592653589793238462643383279502884197169399375 )
FROM
dual
Run Code Online (Sandbox Code Playgroud)
到服务器 - 这就是为什么您可以{fn pi()}对 Oracle 数据库使用 ,即使没有这样的功能可用。