SQL: 改变一个列的值在另一个函数中
SQL: Change the value of a column in function of another
我从 SQL 得到一个 table,我把它放在 winform 的数据网格视图中。
我只想更改我最后一列的值以实现另一列的功能。
这是示例:
我有 4 列:ID / Price / quantity / Rank
我想说类似“如果 ID = 4 则排名 = 5,但如果 ID = 2 则排名 = 2 等...”
我试过了,但会引发错误:
SELECT TOP 1000 ID , Price , quantity , Rank, Country,
CASE Mytable.ID
WHEN 4
THEN Mytable.Rank = 4
END
FROM Mytable
我收到“‘=’附近的语法不正确”
就像它不接受“=”...
有什么想法吗?
as
在 case
表达式之后:
SELECT TOP 1000 ID , Price , quantity, Country,
(CASE Mytable.ID
WHEN 4 THEN 4
END) as rank
FROM Mytable;
如果你既想要原来的军衔又想要新的军衔,那就给他们不同的别名:
SELECT TOP 1000 ID, Price, quantity, rank, Country,
(CASE Mytable.ID
WHEN 4 THEN 4
END) as new_rank
FROM Mytable;
我从 SQL 得到一个 table,我把它放在 winform 的数据网格视图中。 我只想更改我最后一列的值以实现另一列的功能。 这是示例:
我有 4 列:ID / Price / quantity / Rank
我想说类似“如果 ID = 4 则排名 = 5,但如果 ID = 2 则排名 = 2 等...”
我试过了,但会引发错误:
SELECT TOP 1000 ID , Price , quantity , Rank, Country,
CASE Mytable.ID
WHEN 4
THEN Mytable.Rank = 4
END
FROM Mytable
我收到“‘=’附近的语法不正确” 就像它不接受“=”... 有什么想法吗?
as
在 case
表达式之后:
SELECT TOP 1000 ID , Price , quantity, Country,
(CASE Mytable.ID
WHEN 4 THEN 4
END) as rank
FROM Mytable;
如果你既想要原来的军衔又想要新的军衔,那就给他们不同的别名:
SELECT TOP 1000 ID, Price, quantity, rank, Country,
(CASE Mytable.ID
WHEN 4 THEN 4
END) as new_rank
FROM Mytable;