考虑:
Name | Color | Value |
------------------------
John | Red | 2 |
------------------------
John | Blue | 5 |
------------------------
John | Yellow | 10 |
------------------------
预计:
Name | Red | Blue | Yellow |
----------------------------------
John | 2 | 5 | 10 |
----------------------------------
本质上讲,我希望做的是使颜色将各个列的列值作为行值。有一个catch虽然,你只能使用下面的SQL函数:
聚集
AVG(),COUNT(),MAX(),MIN(),SUM(),ROUND()
算术运算符
- (加), - (减法),/(除),%(模),*(乘)
比较运算符
=(等于),>(大于),<(小于),> =(大于或等于),< =(小于或等于),<>(不等于),!=(不等于),! <(不低于)!>(不大于)
逻辑运算符
而且,OR,NOT之间,在一样,任何,所有,一些已存在
函数
Case,Cast,Convert,Current_timestamp,DateAdd,DateDiff,DateName,DatePart,GetDate(),IsDate,Left,Len,Lower,Ltrim,Replace,Replicate,Reverse,Right,Rtrim,Space,Str,子字符串,SUBSTRING(表达式,开始,长度),Sysdatetime, Upper
我已经能够得到它显示颜色作为列标题并返回它的值。然而返回此导致额外的颜色值,太像这样:
Name | Red |
----------------
John | 2 |
----------------
John | |
----------------
John | |
----------------
我知道,因为我添加颜色名称的附加列的其他颜色值占用其他行。我使用的公式如下:
CASE Color WHEN 'Red' THEN Value END
我知道我错过了一个约束,但我不知道我在想什么。任何帮助,将不胜感激。
嘿,约翰,谢谢你的答复。该答案不起作用,但我无法访问选择和分组选项。我只能访问我在原始问题 – NSaid
@NSaid中提供的功能。 。 。你指定你可以使用'sum()',所以我没有看到'group by'的问题。 –
@GordonLinoff我没有权限访问Group。只针对原始问题中列出的功能 – NSaid