相关疑难解决方法(0)

SQL,辅助数字表

对于某些类型的SQL查询,辅助数字表可能非常有用.它可以创建为具有特定任务所需的行数的表,也可以创建为返回每个查询所需行数的用户定义函数.

创建这样一个函数的最佳方法是什么?

sql sql-server

57
推荐指数
3
解决办法
2万
查看次数

在固定间隔中产生明显的随机时间

我试图产生8:00 AM至8:00 PM之间的随机时间为每一行是从数据集选择的,但是,我总是得到相同的随机值的每一行 -我想这是不同的每一行.

表模式和数据:

?????????????????????????
?  ID  ?  CREATED_DATE  ?
?????????????????????????
? ID/1 ?   26/04/2014   ?
? ID/2 ?   26/04/2014   ?
? ID/3 ?   26/04/2014   ?
? ID/4 ?   26/04/2014   ?
? ID/5 ?   26/04/2014   ?
?????????????????????????
Run Code Online (Sandbox Code Playgroud)

СurrentSQL语句:

SELECT [ID]
     , MyFunction.dbo.AddWorkDays(14, [CREATED_DATE]) AS [New Date]
     , CONVERT(VARCHAR, DATEADD(MILLISECOND, CAST(43200000 * RAND() AS INT), CONVERT(TIME, '08:00')), 114) AS [New Time]
FROM [RandomTable]
Run Code Online (Sandbox Code Playgroud)

当前结果(列中每行的相同时间[New Time]):

??????????????????????????????????????????
?  ID  ? …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2008 random-time-generation

29
推荐指数
4
解决办法
8469
查看次数

兰德和两个数字之间

我需要创建一些随机数据,它一直在游泳,直到我记得我的兰德函数在结果中带回0,有没有办法改变100*RAND()不包括0和3*RAND()到不包括0,我需要的是1到100之间(包括100)和另一个随机化数字1和2.

DECLARE @OrderNumber varchar (30)
DECLARE @OrderDate int
DECLARE @OrderLineNumber varchar(50)
DECLARE @CustomerSkey int
DECLARE @ProductSkey int
DECLARE @OrderMethodSkey int

SET @OrderNumber = 1
SET @OrderDate = 0
SET @OrderLineNumber = 1
SET @CustomerSkey = 1
SET @ProductSkey = 1
SET @OrderMethodSkey = 1

WHILE @OrderNumber <= 100
WHILE @OrderDate <= 100
WHILE @OrderLineNumber <= 100
WHILE @CustomerSkey <= 100
WHILE @ProductSkey <= 100
WHILE @OrderMethodSkey <= 100



BEGIN
INSERT INTO Orders 
(OrderNumber
, OrderDate
, OrderLineNumber
, CustomerSkey
, …
Run Code Online (Sandbox Code Playgroud)

sql t-sql

1
推荐指数
1
解决办法
214
查看次数