|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
即使对于MySQL的商业化的企业版来说,也没有高昂的许可证成本,当你将其与像甲骨文和微软之类的大型专有商业数据库比较的话。 我将提出一个应战,谁能用SQLSEERVER提出盘算素数最好的办法,我用了一个新的特性CTE和某些TSQL完成,但均不睬想,前者(CTE)无限制,尔后者(TSQL)发生一百万个素数用了7分种你能够干的更好么?这儿是我的一些代码段落
(TSQL完成)
setnocounton
declare@primetable(primeintnotnullprimarykey)
--insertinto@primevalues(2)
--insertinto@primevalues(3)
--insertinto@primevalues(5)
--insertinto@primevalues(7)
--insertinto@primevalues(11)
declare@numberint,@pcint
set@number=13
set@pc=1
while@pc<1000000
begin
ifnotexists(select1from@primewhere@number%prime=0andprime<sqrt(@number))
begin
insertinto@primeselect@number
set@pc=@pc+1
end
set@number=@number
+casewhen@number%2=1then2
when@number%3=2then2
when@number%5=4then2
when@number%7=6then2
when@number%11=10then2
else1end
end
select@pc 和
(CTE完成)
withseq
as(select13number
unionall
selects.number
+casewhens.number%2=1then2
whens.number%3=2then2
whens.number%5=4then2
whens.number%7=6then2
whens.number%11=10then2
else1end
fromseqs
wherenumber<32767
)
,primeas(
selects.number
fromseqs
wherenotexists(select1fromseqs2wheres2.number<s.numberand(s.number)%s2.number=0)
)
select*
fromprime
option(MAXRECURSION32767)采用DBaaS解决方案,他们也可以使用同大企业一样的技术。在大型组织中,DBaaS可以提供部门级解决MySQL学习教程,而无需IT部门和采购部门的介入,提供更快和更容易的方法来实现小型解决方案。 |
|