SQL Server存储过程更新错误

奥威斯·艾哈迈德(Owais Ahmed)

我有两张桌子

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

我想写一个存储过程将更新Column1funddetails表。

Column1 计算为

funddetails.Industry * Industrydetail.price - Avg of funddetails.Industry per state

如果该值小于或等于-5,则返回50,否则返回100

这是我的存储过程:

 UPDATE FundDetails
 SET Column1 = 
        CASE 
           WHEN (funddetails.Industry * Industrydetail.price-Avg(funddetails.Industry) OVER (partition BY t2.state )) <= -5 
              THEN '50' 
              ELSE '100' 
        END
FROM FundDetails t2
INNER JOIN IndustryDetails t1 ON t1.State = t2.State 

我收到一个错误

窗口函数只能出现在SELECT或ORDER BY子句中。

我是SQL Server的新手。我在做什么错,还是有更好的方法来做我想做的事情?

任何帮助,将不胜感激。提前致谢

曼西

如下修改您的代码

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 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL Server:存储过程语法错误

来自分类Dev

SQL Server存储过程的语法错误

来自分类Dev

存储过程错误SQL Server 2014

来自分类Dev

SQL Server存储过程中的错误

来自分类Dev

存储过程错误SQL Server 2014

来自分类Dev

使用SQL Server中的存储过程动态更新

来自分类Dev

使用SQL Server存储过程插入更新删除Datagridview?

来自分类Dev

SQL Server存储过程检查条件和更新/插入

来自分类Dev

SQL Server存储过程错误:需要声明表变量

来自分类Dev

如何捕获SQL Server存储过程中的错误?

来自分类Dev

如何更正存储过程错误#1934?(SQL Server / PHP)

来自分类Dev

SQL Server中的存储过程;语法错误

来自分类Dev

PHP pdo_odbc SQL Server存储过程意外错误

来自分类Dev

SQL Server创建存储过程语法错误

来自分类Dev

如何在SQL Server中测试存储过程错误

来自分类Dev

SQL Server 存储过程语法错误值

来自分类Dev

SQL Server存储过程参数

来自分类Dev

sql server存储过程IN参数

来自分类Dev

执行SQL Server存储过程

来自分类Dev

SQL Server存储过程参数

来自分类Dev

SQL Server存储过程选择

来自分类Dev

Laravel SQL Server 存储过程

来自分类Dev

SQL Server 存储过程优化

来自分类Dev

SQL Server 存储过程问题

来自分类Dev

SQL Server存储过程和SQL注入

来自分类Dev

存储过程从SQL Server中的存储过程本身获取价值

来自分类Dev

使用存储过程并使用存储过程的SQL Server

来自分类Dev

SQL存储过程与众不同并更新

来自分类Dev

SQL存储过程更新空列