这是我的桌子parameters_info
。
name | value
---------------------------------
fee for normal scan |20
fee for especial scan |500
我想得到的价值(特殊扫描的费用-正常扫描的费用)是480;
如何使用MySQL实现此目标?
答案 0 :(得分:1)
您可以简单地执行以下操作:
SELECT (SELECT value FROM t WHERE name = 'fee for especial scan') -
(SELECT value FROM t WHERE name = 'fee for normal scan')
答案 1 :(得分:0)
您可以使用Sum()
函数使用条件聚合。与使用多个不相关的子查询相比,它可能更有效:
SELECT SUM(CASE name
WHEN 'fee for especial scan' THEN value
WHEN 'fee for normal scan' THEN -1*value
ELSE 0
END)
FROM your_table