用SQL语句实现随机查询数据并不显示错误数据的方法

(编辑:jimmy 日期: 2024/12/26 浏览:2)

问题:上级单位要来检查数据,我的服务器的数据库是SQL server 2000,上级单位要求我用SQL语句在服务器端随机查询50条数据出来。可是我的服务器里有些错误数据不希望他们看到,能不能有什么办法不让他们看到。
  SQL语句: select top 50 x from a_1 where c=xxxx

  语句就是要求这样写,然后他们来运行,怎么办,有什么办法可以在sql server上设置,然后使得这50条数据只在我找出的数据(比如正确的数据400)里随机查询出。尽量不要改动SQL语句。

  Peak Wong:

  可用视图:

  对方抽取时:

  select top 50 * from t_view --视图名

  order by newID()

  在生成视图时,把不显示出来的排除。视图在查询时,也就是一个表名的方式//只要对方不知道数据库表就行了。

  SQL code

  复制代码 代码如下:
select top 10 ID,Name  
  into T--生成测试表  
  from sysobjects  
  go  
  create view Test--生成视图名  
  as  
  select * from T where ID>5  
  go  
  select top 2 * from test order by newID()--随机取两条  


  说明:视图名,最好与表名比较相似就行了。create view Test--生成视图名

  with ENCRYPTION--加密一下,让对方看不到你的视图语句

  as

  select * from T where ID> 5

  go


本篇文章来源于 站长资讯网 原文链接:http://sqlserver.chinahtml.com/2007/119613367717217.shtml

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。