You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何计算两个不同数据表中不同列的百分比

跨数据表计算盈利/亏损百分比

核心逻辑

通过Item_id关联Table1和Table2,以Table1的Item_cost为成本价,Table2的Item_cost为售价,按以下规则计算百分比:

  • 盈利时(售价≥成本价):显示(售价/成本价)*100的结果加%,如120%
  • 亏损时(售价<成本价):显示((售价-成本价)/成本价)*100的结果加%,如-50%

SQL实现示例(以MySQL为例)

SELECT
    t1.Item_id,
    t1.Item_cost AS 成本价,
    t2.Item_cost AS 售价,
    CONCAT(
        CASE
            WHEN t1.Item_cost = 0 THEN 'N/A'  -- 规避除以0的异常
            WHEN t2.Item_cost >= t1.Item_cost THEN ROUND((t2.Item_cost / t1.Item_cost) * 100, 2)
            ELSE ROUND(((t2.Item_cost - t1.Item_cost) / t1.Item_cost) * 100, 2)
        END,
        '%'
    ) AS 盈亏百分比
FROM
    Table1 t1
INNER JOIN
    Table2 t2 ON t1.Item_id = t2.Item_id;

示例验证

假设Table1中Item_id=100的成本价为1000,Table2中对应商品的售价为500:
代入公式得((500-1000)/1000)*100 = -50%,符合亏损显示要求;
若售价为1200,计算得(1200/1000)*100 = 120%,符合盈利显示要求。

内容的提问来源于stack exchange,提问作者kishore

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 08:25:24