sql-server - 如何在 Ms Sql select 中设置变量

标签 sql-server variables select

如何在 MS Sql 选择变量中设置,想法如下:

Declare @var int

SET @var = 0;

Select (if(idid = @var) then sum+1 else sum-1) AS Sum,
   set @var = id 
FROM table

根据评论进行编辑。

DECLARE @T TABLE
(
ID  INT PRIMARY KEY,
IDID INT,
SUMM INT 
)

INSERT INTO @T
SELECT 1,1,4 UNION ALL
SELECT 2,1,5 UNION ALL 
SELECT 3,2,6 UNION ALL 
SELECT 4,2,7 UNION ALL 
SELECT 5,3,8

在选择结果中我需要:

ID  IDID  SUMM 
--  ----  ----
1   1     4 
2   1     0 
3   2     6 
4   2     0 
5   3     8

最佳答案

这就是你想做的事吗?

Declare @var int, @id int
SET @var = 0

SELECT @id = id FROM Table t

if(@id = @var)
BEGIN
    SET @var = @var + 1
END
ELSE
BEGIN
    SET @var = @var - 1
END

print @var

关于sql-server - 如何在 Ms Sql select 中设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6152001/

相关文章:

html - <select> 和 :after with CSS in WebKit 的问题

MySQL - 只有当左表中存在一行时才加入

sql - 如何找出SQL Server执行计划中使用的中间值代表什么

sql-server - 使用分组依据计算总行数

java ;从另一个类访问成员实例变量

c++ - 有没有更好的方法可以编写这个程序?

bash - 我如何强制 bash 扩展变量以将其作为参数传递?

SQL 改进 - UNION?

SQL 添加一天到开始日期

javascript - 使用 Chosen 插件更改选择中的选择