这条SQL语句怎么写?

wf2091139 2005-10-14 01:41:21
SQL:
我想在查询结果集中(比如:select * from tbl)增加显示一列比如就叫Index(不是表中的字段)。希望他是可以像自动增长型字段一样,当我插入、增加、删除时会有相应的变化。我该怎么写这个语句?
...全文
149 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
wf2091139 2005-10-15
  • 打赏
  • 举报
回复

to:
zxbyhcsdn(沙子)
scmail81(freedom)

不好意思!是我测试的时候失误,在后面加了条件,前面忘了加
你们的语句是对的,呵呵

wf2091139 2005-10-15
  • 打赏
  • 举报
回复
比如 数据库通过条件检索后的情况是:
ID tablename 序号
---------------- ----
3 aaa 1
5 bbb 2
7 ccc 3
9 ddd 4

其中“序号”就是想要显示的,他纯粹是标识一下记录数(好象是和ID没有太大的关系)。

to:
zxbyhcsdn(沙子)
scmail81(freedom)
我试了下你们的语句好象效果不对。可能是我开始没有说清楚。
麻烦你们再帮我看看。
zxbyhcsdn 2005-10-15
  • 打赏
  • 举报
回复
呵呵
$扫地僧$ 2005-10-14
  • 打赏
  • 举报
回复
select (select count(*) from 表 where 表.id<=a.id) ID,a.* from 表 a
zxbyhcsdn 2005-10-14
  • 打赏
  • 举报
回复
select *, [id]=(select count(1) from jobs b where b.job_id>a.job_id)+1 from jobs a
wf2091139 2005-10-14
  • 打赏
  • 举报
回复
UP!

wf2091139 2005-10-14
  • 打赏
  • 举报
回复
顶!
wf2091139 2005-10-14
  • 打赏
  • 举报
回复
数据库中已经有类似“序号”这样的字段!当时通过检索后得到的记录

的“序号”值不一定连续!所以我希望可以附加显示一列连续整数的信息!
GNID 2005-10-14
  • 打赏
  • 举报
回复
你可以在你的表中加一个identity列。
另外你说的Select * ,(case when ..then .. else .. end )aaa from tbl ...是一个根据条件aaa列来得到值的一个过程,而你要得到的是一个递增的列,这个是不一样的!
wf2091139 2005-10-14
  • 打赏
  • 举报
回复
顶!!!
wf2091139 2005-10-14
  • 打赏
  • 举报
回复
那为什么有的语句比如

Select * ,(case when ..then .. else .. end )aaa from tbl ...

在查询结果集中会增加显示了1列 “aaa”?

我现在就是像要这列“aaa”是从1开是一直递增(必要的话他可以不是 identity 属性的)。

子陌红尘 2005-10-14
  • 打赏
  • 举报
回复
SQL Server 2000 没有提供类似 Oracle's rownum 这样的伪列,大多数情况下,只能借助临时表来实现伪列。
wf2091139 2005-10-14
  • 打赏
  • 举报
回复
libin_ftsafe(子陌红尘) 在么?在帮我看看可以么?
wf2091139 2005-10-14
  • 打赏
  • 举报
回复
结果有点不像我想要的。
可不可以不通过临时表的方式,直接查询出?
rowid 这个字段只要求他在查询集里面是依次递增的就好了。?

Select ...... from tbl
(其中不使用 "into")
子陌红尘 2005-10-14
  • 打赏
  • 举报
回复
select identity(int,1,1) as rowid,* into #T from tbl

select * from #T order by rowid

drop table #T

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧