繁体   English   中英

计算字段中的MySQL IF条件

[英]MySQL IF Condition in a Calculated Field

我正在尝试创建一个计算字段,如果两个值恰好相同,则该值将翻倍。 我将此条件编码为变量MY。 我是SQL新手,所以向您道歉。

这是我的尝试:

SELECT EXPERT_SCORE*MY
IF(CONSUMER_EXPERT_SCORE_ID= CONSUMER_EXPERT_ID, 1, -1) AS MY 
FROM consumer_expert_score
WHERE CONSUMER_EXPERT_SCORE_ID=2 OR 1;

提前致谢!

您需要CASE WHEN和IN()子句。

不幸的是,我不能完全重写您的查询,因为您的条件是重言式,它将始终返回1。也许您是在说其他什么? 无论如何,我将其更改为我认为您可能想要的意思:

SELECT ....
  case when consumer_expert_id = 1 then 1 else -1 end as my
  from consumer_expert_score
 where consumer_expert_score_id IN (2,1)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM