是否可以在存储过程和函数的范围之外使用 T-SQL 编程结构?具体来说,它们可以在临时 SQL 脚本中使用吗?如果是这样,是否可以使用全部功能(除了传递参数和返回值,我猜这些功能仅在存储过程和函数中受支持)?
我有 Oracle PL/SQL 背景。 PL/SQL 可以在存储过程和函数中使用,也可以在匿名 PL/SQL 代码块中使用,这些代码块可以在临时 SQL 脚本中使用,并且不会存储在数据库中。我想知道 T-SQL 是否有类似的功能。
最佳答案
是的,他们可以采用这个示例解决方案来解决 fizzbuzz 问题:
declare @counter int
declare @output varchar(15)
set @counter = 1
while @counter < 101
begin
set @output = ''
if @counter % 3 = 0
set @output = 'Fizz'
if @counter % 5 = 0
set @output = @output + 'Buzz'
if @output =''
set @output = @counter
print @output
set @counter = @counter + 1
end
当然,不要陷入使用过程代码处理数据的陷阱,SQL 在将数据视为一组时效果最佳。
关于sql - 即席 SQL 脚本中的编程 T-SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30001605/