-2

我有这张表,我如何查询这张表以获得下面的示例输出,其中传递的参数是 Item_Name 和 Spec_Name 谢谢。

Item_Name   Item_Value     Spec_Name   Spec_Value
---------   ----------     ---------   ----------
Circle      Zed Circle     Diameter    180
Circle      Charlo Circle  Diameter    330
Square      Ash Square     Side        120

Item_Name=Circle 和 Spec_Name = Diameter 的示例输出:

 Circle             Zed Circle - Diameter
 -------------     ---------------------
 Zed Circle         180
 Charlo Circle      330

我尝试使用 MAX() 函数,但它只给我 330。:(

这是整个查询:

   SELECT CASE
     WHEN (ITEM_NAME = 'Circle') THEN
      MAX(ITEM_VALUE)
   END AS "Circle",
   CASE
     WHEN (ITEM_NAME = 'Circle' AND SPEC_NAME = 'Diameter') THEN
      MAX(SPEC_VALUE)
   END AS "Circle - Diameter"
  from TBL_SHAPES

已编辑用户已尝试此操作,请在评论中提及。

CASE WHEN (ITEM_NAME = 'Circle' AND SPEC_NAME= 'Diameter') 
THEN MAX(SPEC_VALUE) END 

提前谢谢。

4

1 回答 1

0

你试过使用WHERE吗?

SELECT item_value AS Circle, spec_value AS Diameter
FROM tbl_shapes
WHERE item_name = 'Circle' AND spec_name = 'Diameter'
ORDER BY spec_value
于 2012-07-04T04:59:20.117 回答