循环select查询结果集

--标记id
--每次查询特定列比标记id大的第一条数据,
--同时更新标记id,直到查询结果为空
declare @id varchar(50)
set @id=‘‘
    while 1=1
    begin
        select top 1 @id=id from T_SGZ where id>@id order by id
        if @@ROWCOUNT=0
            break

        print(@id)
    end
时间: 2024-10-01 06:10:53

循环select查询结果集的相关文章

php - 在php脚本中处理select查询结果集

在php脚本中执行select查询命令,也是调用mysql_query()函数,但是和执行DML不同的是,执行SELECT 命令后,mysql_query()函数的返回值是一个资源的引用指针(结果集),需要通过相应函数进行处理. mysql_num_rows($result) 从结果集中获取数据记录的个数 mysql_num_fields($result) 从结果集中获取数据记录列的个数 mysql_fetch_row() 该函数将一条结果记录返回,并以一个普通索引数组的形式保存 mysql_f

mysql存储过程之循环遍历查询结果集

-- 创建存储过程之前需判断该存储过程是否已存在,若存在则删除DROP PROCEDURE IF EXISTS init_reportUrl; -- 创建存储过程CREATE PROCEDURE init_reportUrl()BEGIN -- 定义变量 DECLARE s int DEFAULT 0; DECLARE report_id varchar(255); DECLARE report_url varchar(256); -- 定义游标,并将sql结果集赋值到游标中 DECLARE r

SqlServer中循环查询结果集

declare @id int,@value nvarchar(100); begin declare c_test_main cursor fast_forward for select hps_hpId,hps_time from hospitalPermSupp where hps_usId=1; open c_test_main;--打开游标 while 1=1 --开始循环 begin fetch next from c_test_main into @id,@value; --赋值到

在 SELECT 查询中使用集运算符

在 SELECT 查询中使用集运算符,可以将来自两个或多个查询的结果合并到单个结果集中. 在进行集运算之前,请确保: (1)所有输入集合中,列数和列的顺序必须相同. (2)对应的列中,数据类型必须兼容. 可以在一个查询中使用多个集运算符,运算时基于以下的优先级: (1)包含在括号中的表达式. (2)INTERSECT 运算符 (3)从左到右求值的 EXCEPT 和 UNION 一.UNION 和 UNION ALL UION 和 UNION ALL 用于合并两个输入查询的结果.如果某一行出现在任

SQL Server的优化器会缓存标量子查询结果集吗

在这篇博客"ORACLE当中自定义函数性优化浅析"中,我们介绍了通过标量子查询缓存来优化函数性能: 标量子查询缓存(scalar subquery caching)会通过缓存结果减少SQL对函数(Function)的调用次数, ORACLE会在内存中构建一个哈希表来缓存标量子查询的结果. 那么SQL Server的优化器是否也会有类似这样的功能呢? 抱着这样的疑问,动手测试了一下,准备测试环境 CREATE TABLE TEST (    ID  INT );     DECLARE

hive select查询语句底层实现的某些细微差别

最近,由于工作的需要,学习了基于Hadoop的一个数据仓库工具hive.遇到并解决了一些问题,但是有个select语句的细微差别值得注意. 首先来看两条hql语句: SELECT * FROM MY_TABLE where dt=2014031205 limit 10     SELECT ID,NAME,GENDER,USERNAME,PASSWORD,ISVALID FROM MY_TABLE where dt=2014031205 limit 10 理论上,上述两条hql查询语句的查询结果

oracle分页查询结果集重复问题&解决方法

做项目时,无意间发现了分页上的一个bug,在此记录一下: 首先手动将后台输出的sql语句复制进oracle中查看,以便排查错误,对比以下视图前10条的结果集与10到20条的结果集,发现大部分记录出现重复现象,SQL语句如下: --前10条记录 select *   from (select row_.*, rownum rownum_           from (select t.idcard, count(1)                   from sampling.v_unvou

DB2 SQL查询结果集自动编号、返回条数范围控制研究

DB2 SQL查询结果集自动编号.返回条数范围控制研究 摘要: DB2 SQL语句实现查询的记录自动编号.并根据编号进一步实现记录范围控制.分页查询. 环境: IBM DB2 Universal V9.1 Windows XP Professional 要求:写一个SQL语句,在查询结果中要显示出记录序号,这个序号是是根据记录顺序自动生成的. 测试初始化DB2 SQL脚本: drop table t_test; create table t_test (bs        bigint     

mysqli_stmt类:使用预处理语句处理SELECT查询结果

SELECT语句和其他的SQL查询命令不同,它需要处理查询结果.SQL语句的执行也需要使用mysqli_stmt对象中的execute()方法,但与mysqli对象中的query()方法不同,execute()方法的返回值并不是一个mysqli_result对象.mysqli_stmt对象提供了一种更为精巧的办法来处理SELECT语句查询结果:在使用execute()方法执行SQL语句完成查询之后,使用mysqli_stmt对象中的bind_result()方法,把查询结果的各个数据列绑定到一些