查询时生成数据为行数的一列 的问题????

cheyo车油 2003-10-19 09:11:34
1.
用下面的语句可以生成"排名"列,但是这一列里的数据只是 1,2,3.....
能不能让他显示为 第1名,第2名,第3名.....??

SELECT top 10 IDENTITY(int, 1,1) AS 排名,bID,bName,bReadTimes 浏览次数 into #temp FROM books ORDER BY bReadTimes DESC select * from #temp

2.
用这个语句放在网页中检索数据库,第二次执行时会提示:
数据库中已存在名为 '#temp' 的对象。
请问,如何让这个语句可以反复执行,不会有错误的提示?
是不是有什么参数可以覆盖原来的表格的?
...全文
25 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuiniu 2003-10-19
  • 打赏
  • 举报
回复
很简单啊,在查询出结果后,立即删除表再次查询就不会有错了!
drop table #temp


maoyesky 2003-10-19
  • 打赏
  • 举报
回复
2.
if exists (select 1 from tempdb..sysobjects where name like '%#temp%')
drop table #temp
SELECT top 10 IDENTITY(int, 1,1) AS 排名,'第'+bID+'名',bName,bReadTimes 浏览次数 into #temp FROM books ORDER BY bReadTimes DESC select * from #temp
wzh1215 2003-10-19
  • 打赏
  • 举报
回复
1.
SELECT top 10 IDENTITY(int, 1,1) AS 排名,'第'+bID+'名',bName,bReadTimes 浏览次数 into #temp FROM books ORDER BY bReadTimes DESC select * from #temp

34,588

社区成员

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

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