如何在mysql上连续选择最后一列?

时间:2014-11-17 01:02:08

标签: mysql phpmyadmin

如何选择mysql上一行的最后一列?

对于这样的表:

  ID   qty1    qty2    qty3    qty4   qty5   qty6    qty7 
   1    20      10       90     40     0       0      0
   2    90      80       0       0     0       0      0

结果应为:

ID   last_column_value
 1          40

ID   last_column_value
 2          80

如果我需要1列上的最后一个值,通常我会使用表中的Select Max(ID)。

1 个答案:

答案 0 :(得分:1)

我能看到解决问题的唯一方法是做一个令人讨厌的嵌套IF,如下所示。

SELECT ID, IF(qty7 <> 0,qty7, IF(qty6 <> 0,qty6, IF(qty5 <> 0,qty5, IF(qty4 <> 0,qty4, IF(qty3 <> 0,qty3, IF(qty2 <> 0,qty2, qty1)))))) last_column_value
FROM qtytable

这导致

ID  LAST_COLUMN_VALUE
1   40
2   80

SQL Fiddle