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

在SQL中按年并排比较数据

汪庆
2023-03-14
问题内容

我有类似于以下表格:

Year | Product |  Value
2006   A          10
2006   B          20
2006   C          30
2007   A          40
2007   B          50
2007   C          60

我想要一个查询,该查询将返回以下比较

Product | 2006 Value | 2007 Value
A         10           40
B         20           50
C         30           60

有什么选择呢?无需加入就可以完成吗?

我正在使用DB2,但是所有SQL类型的答案都将有所帮助。


问题答案:
select Product, 
    max(case when Year = 2006 then Value end) as [2006 Value], 
    max(case when Year = 2007 then Value end) as [2007 Value] 
from MyTable
group by Product
order by Product


 类似资料:
  • 我在使用IMDb数据集时遇到了一个问题,我似乎无法解决这个问题。这个问题要求只放映1995年制作的电影。问题是,这一年是与每一个电影标题一起列出的,即:“玩具总动员(1995)”。你怎么能从一串文本中刮出年份? 问题是:

  • 问题内容: 我有一个表,其中包含有关事件和节日的数据,下面的列记录了它们的开始和结束日期。 开始日期 结束日期 日期格式为。我需要在以下情况下获取事件详细信息。 需要获取所有从当前月份开始的事件,并且结束日期可以说什么。 我对结束日期的概念很清楚。但不确定如何获取开始日期为当前月份的数据。为此,我需要将当前年份和当前月份与数据库中的列进行比较。 谁能帮助我指出我该怎么做? 问题答案:

  • 我想学习java中的比较器,我在网上找到了这个很好的例子,我的问题是如何更改这个代码,使宠物的名字按年龄和降序排列,以便最大的是第一个,最小的是最后一个?

  • 问题内容: 如何比较数据类型? 我需要将存储在数据库中的文件与上传的文件进行比较,但是它说无法比较数据类型,我什至试图将其转换为 谁能帮我? 问题答案: 不要使用不推荐使用的数据类型。 而是使用不具有以下所有限制的替换数据类型 同时,您可以允许进行比较。

  • 问题内容: 因此,我有一个表,其ID值和日期看起来像这样: 基本上,ID值仅对那一年是唯一的-它们会重置下一年。 我希望能够按ID值和日期排序,但我想进行排序,以便按年份对值进行排序。只是带有辅助日期排序的常规ID会产生以下结果: 但是我想要一个查询,该查询生成一个看起来像这样的表: 这可能吗? 问题答案: 这个怎么样:

  • 我有以下课程: