当前位置: 首页 > 面试题库 >

如何在单行中选择多列的AVG

况承福
2023-03-14
问题内容

如何选择多列的平均值?

假设我有一些数据,例如:

X   Y    Z
-------------
6   3    3
5   5    NULL
4   5    6
11  7    8

我想得到像

AVG
-------------
4
5
5
8.66666667

我试过了 select avg(x, y, z) from table

但这是行不通的。

有关查询的任何想法可以做到这一点?


问题答案:

尝试

 Select     (Coalesce(x,0) + Coalesce(y,0) + Coalesce(z,0)) /
       (Coalesce(x/x, 0) + Coalesce(y/y, 0) + Coalesce(z/z, 0))

或者

 Select (Coalesce(x,0) + Coalesce(y,0) + Coalesce(z,0)) /
         (Case When x Is Null 0 Else 1 End +
          Case When y Is Null 0 Else 1 End +
          Case When z Is Null 0 Else 1 End)


 类似资料:
  • 问题内容: 我想编写一个SQL Server查询,该查询将从以下示例表中检索数据: 如您所见,SkillLink表的目的是将各种(可能是多个或没有)技能与单个人员匹配。我想通过查询实现的结果是: 因此,对于每个人,我都希望使用逗号连接的所有指向他的SkillName列表。这可能是多种技能,或者根本没有。 这显然不是我正在使用的实际数据,但是结构是相同的。 也请随时为这个问题建议一个更好的标题作为注

  • 问题内容: 我在数据库中有一个表,该表有9列包含相同种类的数据,这些值 允许为null 。我需要将每个非null值选择到单列的值中,这些值不关心它们源自的行的身份。 因此,对于一个看起来像这样的表: 我希望将每个以x开头的值选择到一列中。我得到的数据应如下表所示。需要保留顺序,因此第一行的第一列值应该在顶部,而最后一行的最后列值应该在底部: 我正在使用 SQL Server 2008 R2 。是否

  • 问题内容: 我有一个表,值看起来像这样。 如何在mysql中将列区分为类似的内容? 问题答案: 这应该做 db <> fiddle中的演示 更新以添加编号: 在db <> fiddle中编号的演示

  • 本文向大家介绍如何在R中选择列表的多个元素?,包括了如何在R中选择列表的多个元素?的使用技巧和注意事项,需要的朋友参考一下 通常,R中的列表包含大量元素,每个元素可以具有不同的类型,这对于列表来说是一件好事。由于我们可以将数据类型存储为列表元素,因此存储和选择不同类型的数据变得更加容易。我们还可以一次选择列表中的单个或多个元素。这可以借助单个方括号来完成。 示例 请看以下列表- 选择list_da

  • 问题内容: 我想选择,,从多个选择其中有10个选项。我只想选择这三个选项。 HTML代码: selenium键代码: 我尝试使用此代码。使用此代码,我可以选择第一个选项,即“ P0_ENGLISH”。但是,选择第一个选项后,我得到一个错误: 问题答案: 要从 Multi Select 元素中选择多个 选项 ,可以使用 ActionChains 模拟 Control单击* ,如下所示: *

  • 我有一个名为的表 它有100列:{,,...,} 我了解如何特定列中不包含空值的行,例如: 如何任何列中不包含空值的所有行 但这将在(我正在使用)中返回一个错误