Rag*_*rok 16 sqlite postgresql ifnull
IFNULL()Postgres 中SQLite的等价物是什么?
我必须跟随查询(Ruby中的sqlite):
SELECT ifnull(max(code_id) + 1, 1) 
FROM configentries 
WHERE configtable_id = ...
如果我想要与PostgreSQL相同的结果,这应该怎么样?
Vao*_*sun 30
尝试 coalesce:
COALESCE函数返回其非空的第一个参数.仅当所有参数都为null时才返回Null
SELECT coalesce(max(code_id) + 1, 1) 
FROM configentries 
WHERE configtable_id = ...
简而言之,COALESCE函数就是您可以在 postgres 中使用的函数。
COALESCE优于以下IFNULL几个原因:
COALESCE是标准 SQL 函数(在每个 RDBMS 中实现),而 whileIFNULL即使广泛使用,也不是标准的。COALESCE可以处理两个以上的操作数。它返回第一个非 NULL 值。例如,COALESCE(NULL, 'a', NULL)返回a. IFNULL不能这样做。| 归档时间: | 
 | 
| 查看次数: | 18143 次 | 
| 最近记录: |