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

怎么数据库表中原有的记录 倒序 显示出来.

2013-07-16 
如何数据库表中原有的记录 倒序 显示出来...ps: 数据库表中字段 为 id 和name 两个字段均可以为空。不要告

如何数据库表中原有的记录 倒序 显示出来...
ps: 数据库表中字段 为 id 和name 两个字段均可以为空。
   不要告诉我order by  方法。。。因为有的记录id 和name  均为空
   只想实现表中现有记录 倒序显示出来! 
          拜谢!
[解决办法]
好吧,我闭嘴。
[解决办法]

引用:
ps: 数据库表中字段 为 id 和name 两个字段均可以为空。
   不要告诉我order by  方法。。。因为有的记录id 和name  均为空
   只想实现表中现有记录 倒序显示出来! 
          拜谢!


含有Null 数据,还不能用order by 需要显示表中现有记录  还倒序!!!

没理出逻辑思路。 lz给数据还有结果吧。 

[解决办法]
if object_id('[TB]') is not null drop table [TB]
go
create table [TB] (col1 int,col2 nvarchar(4))
insert into [TB]
select null,null union all
select null,null union all
select null,null union all
select null,null union all
select null,null union all
select null,null union all
select 17,'张三' union all
select 15,'李四' union all
select 13,'白华' union all
select 11,'萍乡' union all
select 9,'武汉' union all
select 7,'南昌'

select * from [TB]

SELECT col1,col2 FROM dbo.TB
ORDER BY ISNULL(col1,9999)  --给个值行不?

/*
col1col2
7南昌
9武汉
11萍乡
13白华
15李四
17张三
NULLNULL
NULLNULL
NULLNULL
NULLNULL
NULLNULL
NULLNULL*/

[解决办法]
楼上的没考虑NULL如下数据
NULL null
NULL null
17 张三
15 李四
NULL null
NULL null
13 白  华
11 萍乡
NULL null
NULL null
9 武汉
7 南昌

LZ真是 好需求 


最好的方法 自己加个标识列 什么都解决了
[解决办法]


select * from (select row_number() over(order by getdate()) as rid,* from syscolumns)t
order by rid desc
--如果不要NULL值 加上where col is not null

[解决办法]
六楼和七楼的都可以,七楼感觉更好些,但是六楼更简单!
七楼代码:

select * from (select row_number() over(order by id) as rid,* from person)t
order by rid desc


[解决办法]
--对于over(order by getdate())这样的排序,当SQL的执行计划改变时,可能得到的结果会有变化.
--所以如果想排序,必需指定排序值。对于包含NULL值的字段,必需指定NULL的值后再排序

CREATE TABLE #OrderBy
(
id INT NOT NULL,
NAME NVARCHAR(10)
)
INSERT #OrderBy
(id, NAME)
SELECT 2, NULL UNION ALL
SELECT 1, 'wyl'

--#1.无索引
SELECT
rid = ROW_NUMBER() OVER(ORDER BY GETDATE()),
*
FROM #OrderBy
ORDER BY rid
--#2.有聚集索引
CREATE CLUSTERED INDEX IX_test ON #OrderBy
(
id

GO
--再次运行,结果与#1不一样!
SELECT
rid = ROW_NUMBER() OVER(ORDER BY GETDATE()),
*
FROM #OrderBy
ORDER BY rid

热点排行