0

我需要从单列中创建两列,price具体取决于它是used/secondhand还是新的。旧的由列中的used某处指示format。一种是“不含税价格”,另一种是price含税。我希望下面的代码(没有错误,但根据我的要求出现故障)能更好地解释它。

当 format ='%used%' 或 format='%secondhand%' then CAST(price AS UNSIGNED INTEGER) else CAST(price AS UNSIGNED INTEGER)*0.8 end as 'Pris ex Tax', CAST(price AS UNSIGNED INTEGER)作为价格

这里基本上我需要为新产品和price二手产品显示价格*0.8 的列。 format在数据库中包含旧文章的信息,usedsecondhand没有新的。

我关注了这个链接 以及stackoverflow中的一些相关问题, 但还不足以让我理解。我试图把输出放在这里,但发现很难做到。如果您认为需要解决它,我会这样做。

4

1 回答 1

2

这是一个很好的链接,它教 MySQL 中的内联 IF 和 CASE 语句。

代码片段:

IF Statement

SELECT IF(score > 100, 100, score) AS score
FROM exam_results

CASE Statement

SELECT CASE num_heads
WHEN 0 THEN 'Zombie'
WHEN 1 THEN 'Human'
ELSE 'Alien'
END AS race
FROM user
于 2012-09-11T16:31:16.367 回答