问题描述
我是 sql 新手,所以如果这很愚蠢,请原谅我。
我有一堆不同的行,每行都是游戏中的新匹配。列按分钟定义。所以 min_1
是第一分钟的开始,min_2
是第二分钟的开始,依此类推。每一行都显示一个团队当时拥有的金币数量,因此对于 min_1
其 0、min_9
其 9012、min_12
其 14587 等
现在我需要找到他们拥有的总金币,在 12 分钟的比赛中,在这种情况下为 14587。然而,并不是每场比赛都是 12 分钟。有些可能是 12,有些可能是 24,大多数在 40-50 分钟之间。游戏结束后,我表中的值也只是空的。所以对于这个 12 分钟的游戏,min_13
只是空白(原始文件是一个 csv,它是表格形式,所以它的值是 null
)。
那么有没有办法在 sql 中查看一行,找到最后一个非空列,并报告值?
到目前为止我的代码是:
CASE
WHEN `blueTeamTag`= 'FNC'
AND `Type` = 'goldblue'
THEN <This is where it would select the column>
END
解决方法
你在用一种语言编码吗?如果您使用 python,则可以查询每一列,直到找到包含值的列。
我经常专业地使用 SQL,我想不出只用 SQL 来做到这一点的方法。