-1

クエリからの出力は次のとおりです。

IIS7        afsgateway  sharepoint  drupal      j2eeapp     Others      frontpage
----------- ----------- ----------- ----------- ----------- ----------- -----------
5637        3691        2321        518         212         107         30

最大の値とその列名、つまり と を取得したいのですが、IIS7それ5637を達成する方法がわかりません。何か助けてください。

4

1 に答える 1

1

このようにしてみてください

SELECT MAX(col1),MAX(col2)
FROM (
  SELECT iis7 + ISNULL(iis7dfs,0) + ISNULL(iis7dfs2,0) AS col1,'IIS7' AS col2
  FROM dbo.WebDirectoryTypeStatistics
UNION AL
  SELECT afsgateway, sharepoint, ISNULL(drupal,0) as col1, 'drupal' AS col2
  FROM dbo.WebDirectoryTypeStatistics
UNION ALL
  SELECT j2eeapp, ntgateway + ISNULL(sp2013,0) + ISNULL(spcommunity,0) AS col1, 
             'Others' AS col2
  FROM dbo.WebDirectoryTypeStatistics
UNION ALL
  SELECT frontpage AS col1, 'frontpage' AS col2  
  FROM dbo.WebDirectoryTypeStatistics
) AS temp

値を 2 つの列として返すように、クエリを再配置しました。col1col2col1すべての最大値をcol2含み、対応する列名を含みます。

于 2013-09-23T08:47:55.820 に答える