首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

在查询语句中怎么增加序号字段(利用临时表)

2013-07-04 
在查询语句中如何增加序号字段(利用临时表)我需要的是通过2个DateTimePicker控件确定时间段作为查询条件,

在查询语句中如何增加序号字段(利用临时表)
我需要的是通过2个DateTimePicker控件确定时间段作为查询条件,在时间段内的查询结果显示在dbgrid中,并在每条数据前增加一个序号字段。(因为每条记录的id自增字段通过查询,其位置不是按顺序排的,所以要个新增的序号字段来显示查询结果)。。。偶说滴有点啰嗦哈。。。
代码如下:

 with gwcladoquery1 do
  begin
    close;
     sql.Clear;
     sql.Add('select *  from workftab where lwfl= '''+trim(edit1.text)+'''  and swsj between :startrq and :endrq order by id ');
       parameters.ParamByName('startrq').value :=formatdatetime('yyyy-mm-dd',datetimepicker1.Datetime);
       parameters.ParamByName('endrq').value:=formatdatetime('yyyy-mm-dd ',datetimepicker2.Datetime)+'23:59:59';
     open;
  end;
  end;

请各位大神们看看,是不是通过建立临时表,通过把里面select语句改了,就能实现吗?还是有别的方法??数据库是sqlserver2005

以前在adoquery控件下新建一个new field,设置下相关项,用recno什么的好像能改,不过要求数据集是开着的,才能add all field吧?我现在这个开着adoconnection的话,如果没连上数据库会弹框框,用try...except,没连上好像也弹框框,让adoconnection关了就没事了。。新手,请大神们看看,这个东东如何实现最好。谢谢 数据库 SQL?Server
[解决办法]
 select ROW_NUMBER() OVER (order by startrq ) as RecNo , *  from workftab

查询语句改成这 加  ROW_NUMBER() OVER (order by startrq ) as RecNo 
[解决办法]
引用:
谢谢leetuo
ROW_NUMBER()是MS SQL Server 2005中新增窗口函数,可用来直接生成行号。刚上网看了下,还有这么个现成的东东哈,方便。

如果我这个是用临时表实现的话,该如何做呢?可以的话就这个问题可以改下吗?

我明天晚上回来,如果有用临时表做的,请发下,新手学习ing,没有的话,明晚就结题了先,我在百度里搜了半天如何在查询中新增加序号字段。。。就没发现过ROW_NUMBER()。。。。还好没走进深坑,再次感谢参与帖子的所有朋友。

临时表可以设置一个自增字段。

热点排行