我讨厌问一些我知道已经回答的问题,但是经过45分钟的搜索后,我会向所有人致谢。
我有一个表格,我需要根据值选择一个项目列表,然后取一个字段并添加一年,并用该值更新另一列。
示例:
select * from table where description='value_i_need'
UPDATE table SET endDate=DATEADD(year, 1, beginDate) -- For each item in the select
编辑:select语句将返回大量结果。我需要唯一更新每一行。
我不知道如何结合选择或循环结果。
我的SQL知识有限,我希望我能够在不必询问的情况下解决这个问题。我感谢任何帮助
编辑2:
我有一个表,我需要经历并更新与描述匹配的每个项目的结束日期。所以我有1000台“计算机”,我需要根据同一行中的另一个字段更新每行中的字段。全部来自一张桌子
答案 0 :(得分:1)
除非我遗漏了某些内容,否则您应该只需将标准添加到更新语句中,如下所示:
UPDATE [table]
SET endDate=DATEADD(year, 1, beginDate)
WHERE description='value_i_need'
答案 1 :(得分:1)
UPDATE T
SET T.END_DATE = DATEADD(YEAR,1,T.BEGINDATE)
FROM TABLE T
WHERE T.DESCRIPTION = 'value_i_need
答案 2 :(得分:1)
你的意思是:
UPDATE [TABLE] SET ENDDATE=DATEADD(YEAR,1,BEGINDATE) WHERE DESCRIPTION='VALUE_I_NEED'
答案 3 :(得分:1)
试试这个
UPDATE
Table T1
SET
T1.endDate=DATEADD(year, 1, beginDate)
WHERE T1.description='value_i_need'