我有这样的数据库,我想通过签入gender列来覆盖该字段,并在emp_name字段中覆盖。
emp_id | emp_name | gender
-------+----------+--------
501 | aaa | M
502 | bbb | F
503 | ccc | F
504 | ddd | M
505 | eee | F
我想要这样的输出
emp_id | emp_name | gender
-------+----------+--------
501 | Mr.aaa | M
502 | Ms.bbb | F
503 | Ms.ccc | F
504 | Mr.ddd | M
505 | Ms.eee | F
我试过这样的选择查询
$select overlay(emp_name placing 'Mr.' from 1 for 0 ) from emp where gender = 'M' ;
我得到的输出,
overlay
---------
Mr. aaa
Mr. ddd
(2 rows)
但是,我没有得到预期的结果。有没有办法得到预期的结果。
提前谢谢
最佳答案
$select overlay(emp_name placing CASE gender WHEN 'M' THEN 'Mr. ' ELSE 'Ms. ' END from 1 for 0 ) from emp;
不是postgresql的人,但这应该管用。
关于sql - 如何在PostgreSQL中以不同的方式使用overlay()?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22863467/