【问题标题】:How to deal with Dynamic Queries如何处理动态查询
【发布时间】:2020-09-22 23:20:55
【问题描述】:

简单的问题

我有一张像这样的表

我想做的是做一个选择,这样我就可以得到一个结果

这是一个旋转问题吗?寻找建议以了解如何为此形成“选择”查询?

【问题讨论】:

  • 我所尝试的只是'从 COALESCE(columnd, columnE) 不为空的表中选择 *

标签: sql sql-server string group-by sql-null


【解决方案1】:

如果要合并前三列中具有相同值的行,则使用聚合:

select columna, columnb,columnc, max(columnd) columnd, max(columne) columne
from mytable
group by columna, columnb, columnc

聚合函数 - 例如 max() - 忽略 null 值,因此 max(columnd) 在具有相同 (columna, columnb,columnc) 的行中为您提供非 null 值。

【讨论】:

  • 谢谢。。还有其他列,不确定我们是否要对 select 语句进行聚合。到那时,我已将每一列分组。对吗?
  • @fireholster:是的,select 子句中不在聚合函数中的所有列(此处为 max())必须在 group by 子句中重复。
  • 我明白了。也感谢 Max 的解释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-13
  • 1970-01-01
  • 2020-02-28
  • 1970-01-01
  • 2011-09-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多