检索出来的数据,想在前面加上一列自增长的字段,用sql怎么写呢?
比如:
  id  name  sex
  01   aa    男
  02   bb    女检索出来之后,前面再加一列自增长的字段
    1   01   aa   男
    2   02   bb   女1 2 是自增长的数据,和后面数据的变化没有关系,DB中也没有这个字段,这个结果只想用sqlL来实现,应该怎么写这个SQL呢?

解决方案 »

  1.   

    你的ID字段值如果是唯一的话:select (select count(1) from tb_name b where  b.id<=a.id) as rownum,a.* from tb_name a;否则,这样处理:
    set @i = 0;
    select @i :=@i+1 as rownum,a.* from tb_name a;
      

  2.   

    如果ID是唯一的可以用查询来解决,否则用SP OR 有自增字段的临时表来处理
      

  3.   

    数据表中添加一个属性`FID` int(10) unsigned NOT NULL auto_increment,
      

  4.   

    id不是唯一的
    set @i = 0;
    select @i :=@i+1 as rownum,a.* from tb_name a;
    这种方法挺好的,不过需要执行两回,有没有执行一回的方法呢?
    执行两回的话放在代码的后台执行的时候有一些问题。
      

  5.   

    最好不用set @i = 0; 这种形式的
    请高手帮帮忙~