SQL Server中for循环的语法
TSQL 中 for
循环的语法是什么?
What is the syntax of a for
loop in TSQL?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
TSQL 中 for
循环的语法是什么?
What is the syntax of a for
loop in TSQL?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(10)
没有 for 循环,只有 while 循环:
There is no for-loop, only the while-loop:
T-SQL 没有
FOR
循环,它有WHILE
循环WHILE (Transact-SQL)
T-SQL doesn't have a
FOR
loop, it has aWHILE
loopWHILE (Transact-SQL)
额外信息
只是添加,因为没有人发布答案,其中包括如何实际迭代循环内的数据集。您可以使用关键字OFFSET FETCH。
用法
Extra Info
Just to add as no-one has posted an answer that includes how to actually iterate over a dataset inside a loop. You can use the keywords OFFSET FETCH.
Usage
SQL Server 尚未正式支持 For 循环。已经有关于实现 FOR 循环的不同方式的答案。我详细回答了如何在 SQL Server 中实现不同类型的循环。
FOR 循环
如果您知道无论如何都需要完成循环的第一次迭代,那么您可以尝试 SQL Server 的 DO..WHILE 或 REPEAT..UNTIL 版本。
DO..WHILE 循环
REPEAT..UNTIL 循环
参考
For loop is not officially supported yet by SQL server. Already there is answer on achieving FOR Loop's different ways. I am detailing answer on ways to achieve different types of loops in SQL server.
FOR Loop
If you know, you need to complete first iteration of loop anyway, then you can try DO..WHILE or REPEAT..UNTIL version of SQL server.
DO..WHILE Loop
REPEAT..UNTIL Loop
Reference
简单的答案是
不!!
。WHILE :
GOTO :
我总是更喜欢
WHILE
而不是GOTO
声明。Simple answer is
NO !!
.WHILE :
GOTO :
I always prefer
WHILE
overGOTO
statement.怎么样:
...当然,如果你需要计数,你可以在里面放一个增量计数器。
How about this:
... of course you could put an incremental counter inside it if you need to count.
老线程但仍然出现,我想我会为那些需要的人提供一个“FOREACH”解决方案。
我应该郑重声明,递归在 SQL 世界中是不受欢迎的。有充分的理由——这可能对性能非常不利。尽管如此,对于维护/离线/批量/临时/测试/等操作,我经常使用这种方法。
Old thread but still coming up and I thought I would offer a "FOREACH" solution for those that need one.
I should state for the record that recursion is frowned upon in the SQL world. And for good reason - it can be very detrimental to performance. Still, for maintenance/offline/bulk/ad-hoc/testing/etc operations, I use this method a lot.
尝试一下,学习一下:
附日期:
Try it, learn it:
With date:
T-SQL 中的 While 循环示例,列出当前月份的开始到结束日期。
While Loop example in T-SQL which list current month's beginning to end date.