我有一张表,其中包含问题列和响应列以及其他一些字段。每一行都有与之相关的版本号,以便您了解最新的问题和回答是什么。所以表看起来像:SQL查询根据另一列中的值扩展一列
from_cntry to_cntry Version question answer
Peru Egypt 39 Max Comp unlimited
Peru Egypt 38 Maxx Comp unlimited
Peru Egypt 39 Actual Comp Determined by country agreement
Brazil Cameroon 39 Actual Comp Determined by country agreement
Brazil Cameroon 39 Max Comp 300000
Brazil Cameroon 38 Max Comp Unlimited
为了响应最新的版本,我想显示在相应的问题标题栏的回应如下:
From_cntry To_cntry Max Comp Actual Comp
Peru Egypt unlimited Determined by country agreement
Brazil Cameroon 300000 Determined by country agreement
(我想不出如何在这里显示的列,所以我包括逗号,其中一个新的列会)
我能够得到的问题及答复,以显示我想要他们,但是当我尝试包括其他的领域我得到一个错误的方式。以下工作用于扩展问题和响应信息。
SELECT
MAX(CASE WHEN Question = 'Max Comp' THEN response else null END) as Max Comp
,MAX(CASE WHEN Question = 'Actual Comp' THEN Response else null end) as Actual Comp
from table
我加入了其他领域的select语句如下:
SELECT from_cntry, to_cntry,
MAX(CASE WHEN Question = 'Max Comp' THEN response else null END) as Max Comp
,MAX(CASE WHEN Question = 'Actual Comp' THEN Response else null end) as Actual Comp
from table
我收到以下错误:不是一个单一群组功能。
任何帮助,将不胜感激。