MySQL数据库比较2行

时间:2017-03-07 14:29:07

标签: mysql function

我有一个开源销售点系统的数据库。 名为ticketlines的表包含每个已售出的项目。 给定的任何折扣都存储在此表中,没有项目名称。 我正在尝试查找一个查询,在那里我可以读出带有NULL产品名称的行,然后计算商品售价。

POS Table Ticketlines

1 个答案:

答案 0 :(得分:0)

自我加入将为此目的而努力。我们的想法是用产品寻找机票。折扣行将加入票号匹配且折扣行不包含产品且产品行号加1等于折扣行号的位置。

   select p.ticket,
          p.line,
          p.units,
          p.price as unit_price,
          ifnull(d.discount,0) as discount,
          p.units * (p.price - ifnull(d.discount,0)) as sale_price
     from ticketlines p
left join ticketlines d on (d.ticket=p.ticket and d.line=p.line+1 and d.product is null)
    where p.product is not null;