如何在Postgres SQL的case select语句中使用like运算符?

10

我想编写一个带有CASE WHEN子句的SQL语句,该子句使用LIKE运算符,但我不确定如何正确格式化该语句。

 SELECT
   services.id,
   (CASE services.description
     WHEN LIKE '%-'
       THEN services.amount * -1
     ELSE services.amount
   END) AS service_amount
 FROM services

我知道在描述中存储“-”不是存储负数的理想方式。目前我没有更新代码库或数据库的能力。 - Peter Black
1个回答

12

用这种方式试一试:

SELECT
   services.id,
   CASE WHEN services.description LIKE '%-'
        THEN services.amount * -1
        ELSE services.amount
   END) AS service_amount
 FROM services

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接