sql中foreach的用法-SQL

SQL 中 FOREACH 的用法

FOREACH 语句在 SQL 中用于对表中的一系列行执行循环操作。它主要用于以下场景:

  • 循环处理表中的多行
  • 对每行执行一个或多个操作
  • 根据条件过滤行

语法:

FOREACH (rowset_expression) AS FOR EACH ROW
  statement_list
登录后复制

其中:

  • rowset_expression 指定要遍历的表或查询结果
  • statement_list 指定执行的 SQL 语句

用法示例:

以下示例使用 FOREACH 遍历 Customers 表,并为每个客户输出姓名和地址:

DECLARE @Customers TABLE (
  ID int,
  Name nvarchar(50),
  Address nvarchar(100)
);
INSERT INTO @Customers (ID, Name, Address) VALUES
  (1, 'John Doe', '123 Main Street'),
  (2, 'Jane Smith', '456 Oak Avenue');

FOREACH (row IN @Customers) AS FOR EACH ROW
  SELECT Name, Address FROM row;
登录后复制

注意:

  • FOREACH 语句必须在 BEGIN...END 块内使用。
  • rowset_expression 可以是表变量、表表达式或查询。
  • statement_list 可以包含任何有效的 SQL 语句,如 SELECT、INSERT、UPDATE 和 DELETE。
  • FOREACH 语句还可用于处理游标。

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。