没有什么能与Oracle年后的DECODE()'Function In名学生相提并论.有没有人把解码写成函数?

推荐答案

有一个类似功能.这叫做CASE份声明.

case 有两种形式:

Simple CASE:

CASE search-expression
    WHEN expression [, expression [ ... ]] THEN
      statements
  [ WHEN expression [, expression [ ... ]] THEN
      statements
    ... ]
  [ ELSE
      statements ]
END CASE;

Searched CASE:

CASE
    WHEN boolean-expression THEN
      statements
  [ WHEN boolean-expression THEN
      statements
    ... ]
  [ ELSE
      statements ]
END CASE;

CASE条语句更容易阅读;比起甲骨文中的decode(),我更喜欢这些.

Postgresql相关问答推荐

在Docker容器内的Postgres,如何通过Promail将JSON登录到Loki?

Select 所有数组类型和维度

PostgreSQL(container)中使用80K子分区表处理共享内存不足错误

Postgres如何插入带有十进制逗号的实数?

PostgreSQL:如何从另一列的 json 值替换为一列?

如何在postgresql中按时间查询

使用 pgx.CopyFrom 将 csv 数据批量插入到 postgres 数据库中

如何在 postgresql 中创建一个空的 JSON 对象?

PostgreSQL:在timestamp::DATE 上创建索引

使用 ON CONFLICT 从 INSERT 返回行,无需更新

INSERT RETURNING 是否保证以 right的顺序返回?

整数除法返回 0

如何让 Rails 使用 SSL 连接到 PostgreSQL?

如何在 Postgresql 中正确使用 FETCH FIRST?

我不明白 postgresql 的 nextval() 是如何工作的,有人可以解释一下吗?

如何增加 max_locks_per_transaction

Postgres Npgsql 连接池

docker postgres 无法从指定端口启动

如何在Postgres中分组并返回总和行

使用 SQLAlchemy 进行 PostgreSQL ILIKE 查询