假设我有数千行要更新。
我计划迭代进行更新;通过每次迭代仅更新1000行。
我想迭代直到没有行要更新为止。
在没有行要更新之前,如何运行下面的T-SQL脚本?
-- TODO: Create a loop so that it exists when there is no ROW left to be updated;
-- how can I do it?
UPDATE tableToUpdate
SET IsVegetable = 1
WHERE Id IN
(SELECT TOP 1000 Id
FROM tableToUpdate
WHERE Date = '2011-07-23 14:00')
-- Loop ends
试试这个循环
while 1 = 1
BEGIN
UPDATE top (1000) tableToUpdate
SET IsVegetable = 1
WHERE
Date = '2011-07-23 14:00'
AND IsNull(IsVegetable, 0) = 0
if @@ROWCOUNT < 1000 BREAK
END
为什么 ISNULL -因为它是不明确-如果字段IsVegetable为空或没有,如果没有-那么 ISNULL 不需要
如果没有行,则IsVegetable <> 1-循环将退出,因为@@ ROWCOUNT将等于0或<1000(对于最后一次迭代)
我有一个名为Card的类,我有一个for循环: 我想做的是基于for循环创建新实例。例如,我希望名字是card1、card2、card3等等。数字来自for循环。 我试过这个,但似乎不起作用: 谁能告诉我我做错了什么吗? 谢谢 所以我正在使用气垫船充满鳗鱼的解决方案,但我还有另一个问题。 我用的是卡片列表。添加(新卡()),当我尝试使用Card(I)设置名称时,java不允许我这么做。在没有i的情
我正在尝试使我的循环回到列表的开始。 这是我当前用来检测列表末尾的东西(在这里找到): 当滚动到最后时,我希望视图在显示列表顶部的数据时是可见的,或者当滚动到列表顶部时,我将显示列表底部的数据。 例如: 视图5视图1视图2视图3视图4
问题内容: 我想知道存储过程中是否可以有多个Update语句 像这样的东西: 现在,我将单独执行它们,但是由于它们只能一起使用,所以我想知道它们是否可以仅位于一个SP中。 问题答案: 是的,有可能:
我想写一个计算长除法问题总进位的代码。这是我为carries编写的函数。我相信问题在于,第一个while循环并没有一直运行。如果是,为什么?这是在Python 3.5中实现的。
我有一个扫描器来输入在一个数组列表中找到一个名字,但是当我尝试使用.get方法时,它说它只能对整数这样做,有没有办法让persons输入到==names(I)? 这是我的代码 导入java.util.ArrayList;导入java.util.scanner; 公共类搜索{ }