sql排序 去除默认升降序排序case方法////遍历数据库所有表及统计表数据总数

case排序法:

select * from userinfo where id='10' or id ='5' or id='8' order by case id when 10 then 1 when 5 then 2 when 8 then 3 end

还有EXEC法 可以网上查

SQLServer遍历数据库所有表及统计表数据总数:

 DECLARE @TableName varchar(255);
 CREATE TABLE #GetRecordingTempTable([id] [INT] IDENTITY(1,1) NOT NULL, [TableName] varchar(255) NOT NULL, [RecordingCount] INT);
 DECLARE Table_Cursor CURSOR FOR SELECT [name] FROM sysobjects WHERE xtype='U';
 OPEN Table_Cursor;
 FETCH NEXT FROM Table_Cursor INTO @TableName;
 WHILE(@@FETCH_STATUS=0)
 BEGIN
 EXEC('INSERT INTO #GetRecordingTempTable ([TableName],[RecordingCount]) SELECT '''+@TableName+''', COUNT(0) FROM ['+@TableName+'];');
 FETCH NEXT FROM   Table_Cursor INTO @TableName;
 END
 CLOSE Table_Cursor;
 DEALLOCATE Table_Cursor;
 SELECT [TableName] AS [表名称],[RecordingCount] AS [总记录数] FROM #GetRecordingTempTable ORDER BY [RecordingCount] DESC;
 DROP TABLE #GetRecordingTempTable;
 GO

 

 

posted @ 2013-09-03 20:15  觉信  阅读(2145)  评论(0编辑  收藏  举报