SQL server 中 return,break和continue的使用及例子

1、continue:

重新开始 WHILE 循环。在 CONTINUE 关键字之后的任何语句都将被忽略。
例子:计算1-10的偶数和

DECLARE @SUM INT, @I INT
SET @SUM=0
SET @I =1
WHILE (@I <=10)
    BEGIN
        IF (@I % 2 =1)
            BEGIN 
                SET @I = @I +1
                CONTINUE
            END
        ELSE 
            BEGIN 
                SET @SUM = @SUM +@I
                SET @I = @I+1
            END
        END

PRINT  '1-10的偶数和:' + CAST(@Sum as varchar(5))
GO

输出: 1-10的偶数和:30

其实这里的continue写不写出来的答案都是正确的。

2、break:

退出 WHILE 或 IF…ELSE 语句中最里面的循环。将执行出现在 END 关键字后面的任何语句,END 关键字为循环结束标记。IF 测试通常会启动 BREAK,但并不总是如此。
例子:遇到5就break了,退出了循环,所以输出值是5

DECLARE  @I INT
SET @I =1
WHILE (@I <=10)
    BEGIN
        IF (@I=5)
            BEGIN 
                BREAK
            END
        ELSE 
            BEGIN 
                SET @I = @I+1
            END
        END

PRINT  '@I 的值:' + CAST(@I as varchar(5))
GO

输出:@I 的值:5

3、return

从查询或过程中无条件退出。可在任何时候用于从过程、批处理或语句块中退出。****RETURN 之后的语句是不执行的
例子:return后,在批处理里面的语句PRINT ‘@I 的值:’ + CAST(@I as varchar(5))都不输出了,只输出后面再批处理后面的print

DECLARE  @I INT
SET @I =1
WHILE (@I <=10)
    BEGIN
        IF (@I=5)
            BEGIN 
                RETURN
            END
        ELSE 
            BEGIN 
                SET @I = @I+1
            END
        END

PRINT  '@I 的值:' + CAST(@I as varchar(5))
GO
PRINT '@@@@批处理后代码@@@@'

输出:@@@@批处理后代码@@@@

  • 5
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SQL Server 和 PostgreSQL 的保留关键字有一些差异。其SQL Server 的保留关键字包括:ADD, ALTER, AS, ASC, AUTHORIZATION, BACKUP, BEGIN, BREAK, BROWSE, BULK, BY, CASCADE, CASE, CHECK, CHECKPOINT, CLOSE, CLUSTERED, COALESCE, COLLATE, COLUMN, COMMIT, COMPUTE, CONSTRAINT, CONTAINS, CONTAINSTABLE, CONTINUE, CONVERT, CREATE, CROSS, CURRENT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER, CURSOR, DATABASE, DBCC, DEALLOCATE, DECLARE, DEFAULT, DELETE, DENY, DESC, DISK, DISTINCT, DISTRIBUTED, DOUBLE, DROP, DUMP, ELSE, END, ERRLVL, ESCAPE, EXCEPT, EXEC, EXECUTE, EXISTS, EXIT, EXTERNAL, FETCH, FILE, FILLFACTOR, FOR, FOREIGN, FREETEXT, FREETEXTTABLE, FROM, FULL, FUNCTION, GOTO, GRANT, GROUP, HAVING, HOLDLOCK, IDENTITY, IDENTITY_INSERT, IDENTITYCOL, IF, IN, INDEX, INNER, INSERT, INTERSECT, INTO, IS, JOIN, KEY, KILL, LEFT, LIKE, LINENO, LOAD, MERGE, NATIONAL, NATURAL, NCHAR, NEXT, NOCHECK, NONCLUSTERED, NOT, NULL, NULLIF, OF, OFF, OFFSETS, ON, OPEN, OPENDATASOURCE, OPENQUERY, OPENROWSET, OPENXML, OPTION, OR, ORDER, OUTER, OVER, PERCENT, PLAN, PRECISION, PRIMARY, PRINT, PROC, PROCEDURE, PUBLIC, RAISERROR, READ, READTEXT, RECONFIGURE, REFERENCES, REPLICATION, RESTORE, RESTRICT, RETURN, REVERT, REVOKE, RIGHT, ROLE,ROLLBACK, ROWCOUNT, ROWGUIDCOL, RULE, SAVE, SCHEMA, SECURITYAUDIT, SELECT, SEMANTICKEYPHRASETABLE, SEMANTICSIMILARITYDETAILSTABLE, SEMANTICSIMILARITYTABLE, SESSION_USER, SET, SETUSER, SHUTDOWN, SOME, STATISTICS, SYSTEM_USER, TABLE, TABLESAMPLE, TEXTSIZE, THEN, TO, TOP, TRAN, TRANSACTION, TRIGGER, TRUNCATE, TRY_CONVERT, TSEQUAL, UNION, UNIQUE, UNPIVOT, UPDATE, UPDATETEXT, USE, USER, VALUES, VARYING, VIEW, WAITFOR, WHEN, WHERE, WHILE, WITH, WITHIN GROUP, WRITETEXT。 而 PostgreSQL 的保留关键字包括:ALL, ANALYSE, ANALYZE, AND, ANY, ARRAY, AS, ASC, ASYMMETRIC, AUTHORIZATION, BINARY, BOTH, CASE, CAST, CHECK, COLLATE, COLUMN, CONSTRAINT, CREATE, CROSS, CURRENT_CATALOG, CURRENT_DATE, CURRENT_ROLE, CURRENT_SCHEMA, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER, DEFAULT, DEFERRABLE, DESC, DISTINCT, DO, ELSE, END, EXCEPT, FALSE, FETCH, FOR, FOREIGN, FREEZE, FROM, FULL, GRANT, GROUP, HAVING, ILIKE, IN, INITIALLY, INNER, INTERSECT, INTO, IS, ISNULL, JOIN, LATERAL, LEADING, LEFT, LIKE, LIMIT, LOCALTIME, LOCALTIMESTAMP, NATURAL, NOT, NOTNULL, NULL, OFFSET, ON, ONLY, OR, ORDER, OUTER, OVERLAPS, PLACING, PRIMARY, REFERENCES, RETURNING, RIGHT, SELECT, SESSION_USER, SIMILAR, SOME, SYMMETRIC, TABLE, TABLESAMPLE, THEN, TO, TRAILING, TRUE, UNION, UNIQUE, USER, USING, VARIADIC, VERBOSE, WHEN, WHERE, WINDOW, WITH。 以上是两种数据库的保留关键字的差异。 ### 回答2: SQL Server和PostgreSQL是两种常见的关系型数据库管理系统(RDBMS)。它们的保留关键字在某些情况下是有所不同的,下面是它们的差异: 1.关键字的数量:SQL Server和PostgreSQL之间的保留关键字数量是不同的。SQL Server拥有更多的保留关键字,这意味着在SQL Server,您需要更小心地选择列名和表名,以避免使用到这些保留关键字,否则可能会导致语法错误。 2.关键字的用途:两者之间还有一些保留关键字在用法上略有不同。例如,在SQL Server使用TOP来获取前几条记录,而在PostgreSQL使用LIMIT来实现相同的功能。这意味着,在从一个数据库系统迁移到另一个数据库系统时,您可能需要更改您的查询以适应不同的保留关键字。 3.大小写敏感性:在SQL Server,保留关键字是不区分大小写的,而在PostgreSQL,保留关键字是区分大小写的。这意味着在使用PostgreSQL时,必须严格按照保留关键字的大小写编写查询,否则可能会导致语法错误。 总体而言,SQL Server和PostgreSQL在保留关键字方面存在一些差异,包括关键字的数量、用途和大小写敏感性。在编写查询时,要特别注意这些差异,以避免语法错误和查询失败。 ### 回答3: SQL Server和PostgreSQL是两种不同的关系型数据库管理系统,它们在保留关键字方面存在一些差异。 首先,在SQL Server,一些常用的保留关键字包括:SELECT、INSERT、UPDATE、DELETE、WHERE、FROM、JOIN、GROUP BY、HAVING、ORDER BY等。这些关键字用于执行查询、插入、更新和删除操作,以及过滤、排序和分组数据。此外,SQL Server还有一些特定的保留关键字,例如TOP、AS、INNER JOIN、OUTER JOIN、UNION等。 而在PostgreSQL,保留关键字的列表与SQL Server有些不同。PostgreSQL的保留关键字包括:SELECT、INSERT、UPDATE、DELETE、WHERE、FROM、JOIN、GROUP BY、HAVING、ORDER BY等,这些与SQL Server相同。但是,PostgreSQL还有一些额外的保留关键字,如VALUES、RETURNING、GRANT、CASE、CAST等。 此外,两者在保留关键字的使用语法上也存在一些差异。在SQL Server,保留关键字通常不区分大小写,因此可以使用大写或小写或其组合来表示关键字。而在PostgreSQL,保留关键字是不区分大小写的,但建议使用小写来表示。此外,在PostgreSQL,如果需要使用与保留关键字相同的名称作为表名或列名,可以使用双引号将其括起来,以区分为标识符而不是关键字。 总结而言,SQL Server和PostgreSQL在保留关键字方面存在一些差异。尽管它们有许多相同的关键字,但两者都有一些特定的关键字和语法上的差异。在编写SQL查询和语句时,要注意了解和遵守所使用的数据库管理系统的保留关键字的规则和约束。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值