我有两张桌子
*{
margin : 0;
padding : 0;
}
body{
background-color: grey;
}
.outer{
width : 200px;
height : 200px;
overflow : hidden;
border-radius : 50%;
background-color : black;
margin : auto;
}
img{
position:absolute;
z-index : -1;
margin-left : -25%;
}
:
Funddetails
FundId Fund Industry State Column1
-----------------------------------------
1 1 2 NSW
2 1 2 ACT
3 1 2 VIC
4 1 2 NSW
5 1 2 ACT
6 1 2 VIC
7 1 2 NSW
8 1 2 ACT
9 1 2 VIC
:
Industrydetail
我想编写一个存储过程,它将更新IndustryId price State
-----------------------
1 12 NSW
2 1 Vic
3 3 ACT
表的Column1
。
funddetails
计算为
Column1
如果该值小于或等于-5,则返回50 else 100
这是我的存储过程:
funddetails.Industry * Industrydetail.price - Avg of funddetails.Industry per state
我收到错误
窗口函数只能出现在SELECT或ORDER BY子句中。
我是SQL Server新手。我做错了什么,或者有什么更好的方法来做我想做的事情?
任何帮助将不胜感激。提前致谢
答案 0 :(得分:0)
您可以如下所示:
/~projectname/lng
答案 1 :(得分:0)
修改您的代码,如下所示
UPDATE FundDetails
SET Column1= CASE
WHEN (funddetails.Industry*Industrydetails.price-
(select Avg(funddetails.Industry) OVER (partition BY FundDetails.state))
<= -5 THEN '50' ELSE '100'
END
FROM FundDetails
INNER JOIN Industrydetails on FundDetails.State = Industrydetails.State