2017-02-27 47 views
-1

使用包含5列和许多行的表格。唯一需要注意的是Order_number。我需要能够计算具有相同order_number的行之间的百分比变化,使用第一行作为参考。例如:假设我们有四行具有相同的order_id,使用最早的时间作为参考,我们可以看到一行有一列差异,一行有两列不同。新创建的列计算百分比差异。如何计算具有相同ID的行之间不同的列数?

前:

Order_number | color | price | location | time     

5   | blue | 2.99 | Ohio | 11:30 
5   | red | 2.99 | Ohio | 11:49 
5   | green | 2.99 | Ohio | 11:49 
5   | blue | 2.99 | Ohio | 11:49 

后:

Order_number | color | price | location | time | percent_change    

5   | blue | 2.99 | Ohio | 11:30 | 0 
5   | red | 2.99 | Ohio | 11:49 | 40 
5   | green | 2.99 | Ohio | 11:49 | 60 
5   | blue | 2.99 | Ohio | 11:49 | 20 
+0

你要做的逐场对场的对比,并添加差异或等于起来 – Shadow

+2

更新你的问题,并添加适当的数据样本和预期的结果 – scaisEdge

+0

几件事情,可能会增加透明度的问题:那10列是什么?他们的数据类型是否相同以便进行比较?是应该在行内还是属于'order_id'的行中进行比较? –

回答

0

也许这:

select count(distinct *) from table 
+0

这将消除重复项,但我希望添加一个分析它们的列,即使它们相同。重复的行将有0%的差异。 – LampPost

相关问题