分手快乐 发表于 2015-1-16 22:32:37

MSSQL编程:随机挑选表格里的行

这里我们讨论用binlog来实现闪回的方案。随机ZDNetChinaFriday,November2820034:08PM

你可使用良多种体例随机选择数据行;这在你想要往网站里到场静态特征的时分出格无效。比方,你能够任意选择一个产物,将其作为“明天的特征产物”来展现,大概质量评价职员(QA)能够天生一个随机的挪用表,以丈量用户的中意度。

可是个中的停滞是SQL不同意随机选择列。好动静是,有一个复杂的技能可以在SQL里完成这一功效。

该办理计划基于uniqueidentifier这个数据范例。独一的标识符,也叫做全局独一标识符(GuaranteedUniqueIdentifiers,GUID),看起来就像上面如许:

4C34AA46-2A5A-4F8C-897F-02354728C7B0

SQL服务器在良多情形下城市利用GUID,最分明的大概就是复制历程了。当一般增加的单元数据列(identitycolumn)没有供应充足的关头字时,你可使用它们。要做到这一点,你就要创立一个uniqueidentifier范例的数据列,而这个范例缺省的值是NewID(),就像上面一样:

CREATETABLEMyNewTable(PKuniqueidentifierNOTNULLDEFAULTNewID(),AnotherColumnvarchar(50)NOTNULL,...

这个函数就像是办理我们选择随机列成绩的钥匙。我们能够复杂地挪用NewID(),将其作为我们查询里的一个假造列,就像上面如许:

SELECTTOP10OrderID,NewID()asRandomFROMOrdersORDERBYRandom

比来我创立一个页面,下面宣布有10个随机用户的弁言来嘉赞公司服务,在做这个的时分我用到了这个办理计划。用户也能够在他们每次会见网站的时分看到新的弁言。

这是向网站到场新吸引点的复杂办法。既然你晓得了怎样公布随机选择的数据列,你看起来就像是一个SQL的明星了。

本文ArthurFuller开辟数据库使用程序已有20年了。他的专业履历包含AccessADPs、微软SQL2000、MySQL和.NET。
对于update操作,只需要把event中的旧行和新行值对调即可。

金色的骷髅 发表于 2015-1-19 16:23:51

多加的系统视图和实时系统信息这些东西对DBA挑优非常有帮助,但是感觉粒度还是不太细。

小魔女 发表于 2015-1-25 16:56:20

我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过!

admin 发表于 2015-2-3 11:52:40

大侠们有推荐的书籍和学习方法写下吧。

山那边是海 发表于 2015-2-8 20:31:52

分区表是个亮点!从分区表也能看出微软要做大作强SQLServer的信心。资料很多,这里不详细说。但是重点了解的是:现在的SQLServer2005的表,都是默认为分区表的。因为它要支持滑动窗口的这个特性。这种特性对历史数据和实时数据的处理是很有帮助的。

不帅 发表于 2015-2-26 06:23:28

一个是把SQL语句写到客户端,可以使用DataSet进行加工;

冷月葬花魂 发表于 2015-3-15 22:54:46

如果我们从集合论(关系代数)的角度来看,一张数据库的表就是一组数据元的关系,而每个SQL语句会改变一种或数种关系,从而产生出新的数据元的关系(即产生新的表)。

第二个灵魂 发表于 2015-3-22 17:29:41

Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
页: [1]
查看完整版本: MSSQL编程:随机挑选表格里的行