PostgreSQL 中最快的查询是什么,我可以将其用作绑定 JNDI 资源的验证查询?
我认为这SELECT 1
是最简单的,但在本文档中说在 PostgreSQL 中我们应该使用select version()
. 这对我来说并不明显。
我试图比较EXPLAIN ANALYZE SELECT 1
,EXPLAIN ANALYZE SELECT version()
但仍然看不出为什么第二个(或应该)更快。
PostgreSQL 中最快的查询是什么,我可以将其用作绑定 JNDI 资源的验证查询?
我认为这SELECT 1
是最简单的,但在本文档中说在 PostgreSQL 中我们应该使用select version()
. 这对我来说并不明显。
我试图比较EXPLAIN ANALYZE SELECT 1
,EXPLAIN ANALYZE SELECT version()
但仍然看不出为什么第二个(或应该)更快。
这显然是无稽之谈。
SELECT 1
更快(如果只是一点点)。version()
还返回相当多的文本字节,在我的例子中:因此,您也会获得一些额外的 I/O。
例如,pgAdmin
SELECT 1
用作验证查询。JIRA 在连接时会查看数据库版本,以弄清楚它应该如何处理字符串转义,这些在数据库的后续版本中发生了变化。这就是我知道他们使用更长、更慢的版本检查而不是更简单的 SELECT 的主要原因。那里也可能有其他版本特定的代码。