select top 1 flow_terminal_id
from t_c_flow_terminal
where source_no = '[@sid]' and operation_status <> '08'
order by flow_terminal_id
需求是在一个表中若存在一条满足某条件的记录,则应给出提示。问题是现在需要的是查到一条后,就应该退出,而无需遍历这个表,我现在的写法效率很低,还是用了order by.我想问的是在SQL Server 里怎样写像 break 之类的语法

解决方案 »

  1.   

    while existS(select top 1 flow_terminal_id
    from t_c_flow_terminal
    where source_no = '[@sid]' and operation_status <> '08')
    BEGIN
    BREAK
    END 
      

  2.   


    两个 Transact-SQL 语句通常和 WHILE 一起使用:REAK 或 CONTINUE。BREAK 语句退出最内层的 WHILE 循环,CONTINUE 语句则重新开始 WHILE 循环。例如,如果没有其他行可以处理,程序可能执行 BREAK 语句。例如,如果要继续执行代码,则可以执行 CONTINUE 语句。