我有一个场景,我只需要显示非零列

id C1 C2 C3 C4
 1  0  1  0  2
 2  0  1  0  5
 3  0  9  0  3

我要输出如下
id C2 C4
1   1  2
2   1  5
3   9  3

最佳答案

SQL查询总是在已知列之前产生结果。所以你不能在纯SQL中做你想做的事情。(而且不能只使用SQL做一些事情通常是一个糟糕的数据库设计的标志。然而,有时候SQL是关于如何获取数据,而不是如何显示数据。)
您可以做的是在一个查询中获取列的和,然后动态地(手动地或在使用Java、PHP或任何编程语言的应用程序中)构建一个新的查询,该查询只选择非零列。

关于mysql - 在mysql中选择非零列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28297205/

10-11 14:06