SQL随机数不起作用

2024-01-11

declare @fieldForceCounter as int
declare @SaleDate as dateTime
declare @RandomNoSeed as decimal

set @fieldForceCounter = 1
set @SaleDate = '1 Jan 2009'
set @RandomNoSeed = 0.0

WHILE @fieldForceCounter <= 3
   BEGIN

    while @SaleDate <= '1 Dec 2009' 
    begin       

        INSERT INTO MonthlySales(FFCode, SaleDate, SaleValue) VALUES(@fieldForceCounter, @SaleDate, RAND(@RandomNoSeed))

        set @saleDate = @saleDate + 1
        set @RandomNoSeed = Rand(@RandomNoSeed) + 1

    end

    set @SaleDate = '1 Jan 2009'
    set @fieldForceCounter = @fieldForceCounter + 1
   END
GO

这个 T-SQL 命令应该在 'SaleValue' - ' 中的列MonthlySales'-table.

但每次都是插入'1'。

可能是什么问题?


两个问题:

  • 首先,rand() 函数返回 0 到 1 之间的数字。
  • 其次,当在同一查询中多次调用 rand() 时(例如,对于更新语句中的多行),它通常返回相同的数字(我怀疑你上面的算法试图通过将其分成多个调用来解决)

解决第二个问题我最喜欢的方法是使用一个保证每次返回唯一值的函数,例如 newid(),将其转换为 varbinary,并将其用作种子:)

编辑:经过一些测试,似乎您需要尝试使用不同的数据类型@RandomNoSeed; float 的行为与十进制有些不同,但仍然接近固定值,因此我建议完全避免使用 @RandomNoSeed,而只需使用:

INSERT INTO MonthlySales(FFCode, SaleDate, SaleValue) 
VALUES(@fieldForceCounter, @SaleDate, RAND(convert(varbinary,newid())))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL随机数不起作用 的相关文章

  • C++ - 生成遵循范围内正态分布的随机数

    我需要生成遵循正态分布的随机数 该数应位于 1000 到 11000 的区间内 平均值为 7000 我想使用C 11库函数 http www cplusplus com reference random normal distributio
  • Mysql 在给定日期时间范围内插入随机日期时间

    使用 SQL 我可以在给出范围的列中插入随机日期时间值吗 例如 给定一个范围2010 04 30 14 53 27 to 2012 04 30 14 53 27 我对范围部分感到困惑 因为我刚刚做了这个 INSERT INTO someta
  • 仅基于月份和年份的 SQL Server 日期比较

    我无法确定仅根据月份和年份比较 SQL 中的日期的最佳方法 我们根据日期进行计算 由于计费是按月进行的 因此该月的日期会造成更多障碍 例如 DECLARE date1 DATETIME CAST 6 15 2014 AS DATETIME
  • 在 Sql Server 中启用 DTD 支持

    我有各种 xml 文档需要存储在数据库列中 这些文档包含对 DTD 的引用 并且 SQL Server 不会导入 xml 因为它存在安全风险 如何在数据库上启用 DTD 支持 以便它可以让我插入 xml 内容 你必须CONVERT首先 MS
  • 搜索多个表 (SQL)

    我需要能够有一个 SQL 查询来使用简单的搜索来搜索我的数据库 这是我的表格现在的样子 Table artists id name Table albums id artistID name Table songs id albumID n
  • 如何删除实体框架6中的多对多关系

    如果将项目连接为多对多关系 则从数据库中删除项目时会出现问题 我的数据库看起来像 Project lt JobInProject gt Job ProjectID JobInProjectID JobID ProjectID JobID 主
  • 如何使用 SQL - INSERT...ON DUPLICATE KEY UPDATE?

    我有一个脚本可以捕获推文并将其放入数据库中 我将在 cronjob 上运行脚本 然后在我的网站上显示数据库中的推文 以防止达到 Twitter API 的限制 所以我不想在我的数据库中有重复的推文 我知道我可以使用 INSERT ON DU
  • 当您执行“SELECT *”时,SQL Server 如何确定列的顺序?

    当您执行以下操作时 SQL Server 如何确定列的顺序SELECT 我知道 订购依据 对于订购至关重要data 但我预计列名保持一致 注意 我的代码是not取决于返回列的实际顺序 我只想知道 SQL Server 如何决定对列名进行排序
  • 如何限制mySQL中的搜索和替换字符串

    我用它来搜索和替换 mySQL 中的字符串 UPDATE products SET prodname REPLACE prodname S S 这些产品包含诸如 TYLENOL TABS 100 S 之类的字符串 我想将其转换为 TYLEN
  • HANA 列表/显示表 SQL 命令

    如何通过 SQL 显示 列出 SAP HANA 中的所有表 SAP HANA 通过系统表提供数据库目录 就像大多数其他 DBMS 一样 TABLES https help sap com saphelp hanaplatform helpd
  • SSIS Excel 文件问题 - 创建文件失败

    我有 SSIS 包 可以抓取 excel 文件并将其加载到 sql 表中 运行它时出现以下错误 我尝试将 64 位运行设置为 false 那不起作用 我还安装了 64 位访问驱动程序引擎 这也没有帮助 数据流任务 Excel 源 2 出错
  • 如何获取 dm_exec_sql_text 的参数值

    我正在运行以下语句来查看 sql server 中正在执行哪些查询 select from sys dm exec requests r cross apply sys dm exec sql text r sql handle where
  • 使用输出在合并语句中设置变量

    我有一个合并语句应该始终更新或插入一条记录 我想记住变量中该语句的 ID 它看起来像这样 DECLARE int int MERGE dbo table AS A USING SELECT stringtomatch AS string A
  • 如何检查Azure SQL数据库中是否已存在数据库用户

    我的新客户计划使用 Azure 托管 SQL 数据库服务 我正在使用 dacpac 来部署数据库 在 dacpac 中 我有一个部署后脚本 用于创建 sql 用户 如下所示 IF NOT EXISTS SELECT name FROM sy
  • MYSQL 中当前行上日期之前(并包括该日期)的所有行的总和

    重要的是要知道在查询期间日期是未知的 因此我不能只硬编码 WHERE 子句 这是我的桌子 Date ID Customer Order Count 20150101 Jones 6 20150102 Jones 4 20150103 Jon
  • sql连接一个表中的两个字段

    我有一个预订表 其中有两个人 我想将 person 1 作为一行返回 将 person 2 作为新行返回 但该人的 id 与人员表相关 这是我所得到的 但没有提取预订信息 SELECT people FROM select booking
  • 插入MYSQL时自动初始化GETDATE()

    类似问题 https stackoverflow com questions 17700239 mysql column automaticly current time of insert w3schools 也许有用的链接 http w
  • SQL Server 删除触发器 - 引用已删除行或标记为删除的行的行句柄

    我在表上有一个删除触发器 用于从另一个数据库的表中删除条目 CREATE TRIGGER dbo Trigger Contracts Delete ON dbo Contracts AFTER DELETE NOT FOR REPLICAT
  • SQL Server 为什么索引不与 OR 一起使用

    我一直在研究索引并试图了解它们是如何工作的以及如何使用它们来提高性能 但我错过了一些东西 我有下表 Person Id Name Email Phone 1 John E1 P1 2 Max E2 P2 我正在尝试找到对列进行索引的最佳方法
  • 在sql server中动态生成列名

    请看下面的查询 select name as Employee Name from table name 我想生成 Employee Name 动态地基于其他列值 这是示例表 s dt dt01 dt02 dt03 2015 10 26 I

随机推荐

  • Spring Boot、Keycloak 和 Vaadin 集成问题

    我一直在玩 Spring Boot 并成功地在不同的项目中分别使用 Keycloak 和 Vaadin 现在 我想将两者结合起来 以避免必须使用 Vaadin 实现我自己的安全性 到目前为止我得到的结果可以在这里找到 github项目 ht
  • 如何编写正则表达式来重复捕获较大匹配中的组?

    我对正则表达式感到头疼 所以希望有人可以帮助我 我正在做一些文件语法转换 文件中出现这种情况 OpenMarker keyword some expression keyword some expression keyword some e
  • 如何在 Silverlight 中通过名称获取 DependencyProperty?

    情况 我有一个字符串 表示 Silverlight 中 TextBox 的 DependencyProperty 的名称 例如 文本属性 我需要获取对 TextBox 的实际 TextProperty 的引用 它是一个 Dependency
  • 使用单个事件处理程序检测元素内部/外部的单击

    假设我的页面中有一个 div 如何通过 JavaScript 或 JQuery 检测用户点击 div 内容或 div 内容之外 请帮忙处理小代码片段 谢谢 Edit 正如下面的答案之一所述 我只想将事件处理程序附加到我的主体 并且还想知道单
  • 从 pdf 中提取文本的最佳 Perl 模块是什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Linux 脚本检查进程是否正在运行并对结果采取行动

    我有一个经常失败的进程 有时会启动重复的实例 当我跑步时 ps x grep v grep grep c processname 我会得到 2这是正常的 因为该进程与恢复进程一起运行 如果我有0我想开始这个过程 如果我有 4我想停止并重新启
  • 使用 ruby​​ 将 unicode 转换为字符

    我找到了unicode的汉字词典 我正在尝试用这本字典建立一个字符数据库 但我不知道如何将 unicode 转换为字符 p 国 unpack U first this gives the unicode 22269 怎样才能转换22269返
  • Python os.forkpty 为什么我不能让它工作

    import pty import os import sys import time pid fd os forkpty if pid 0 Slave os execlp su su MYUSERNAME c id Master prin
  • 如何使用 Go 驱动程序在 Mattermost 中从机器人发送直接消息?

    使用 Mattermost 的 Go 驱动程序 是否可以从机器人帐户向用户发送直接消息 我一直在尝试下面的这种方法 但我不断收到错误 您没有适当的权限 我已经多次检查了机器人的权限 它应该能够发送消息 我已经确认它也可以将消息发送到公共渠道
  • Android 在首选项中存储数组

    我知道只有原语可以存储在android首选项中 但是数组算吗 我可以在 Android 首选项中存储字符串或布尔值数组吗 仅当将数组转换为字符串时
  • 如何在 RNN 中嵌入句子序列?

    我正在尝试制作一个 RNN 模型 在 Pytorch 中 它需要几个句子 然后将其分类为Class 0 or Class 1 为了解决这个问题 我们假设句子的 max len 为 4 max amount of time steps 为 5
  • 更改 ListView 中 GridView 行的背景颜色

    我有一个列表视图如下
  • 为什么不使用抽象类而不是接口?

    我正在考虑使用带有所有抽象成员的抽象类而不是接口 以避免显式接口实现样板代码 所以而不是 type IMyInterface abstract Name string abstract Text string type MyClass me
  • 从具有多个结果的矩阵构建地图

    我有一个未知 n x m 维度的输入矩阵 由 1 和 0 填充 例如 5x4 矩阵 A array 1 0 0 0 1 0 0 0 0 1 1 0 0 1 1 0 1 0 1 1 Goal 我需要在之间创建 1 1 地图as many尽可能
  • VS 链接器失败,并出现 std::string 方法的“对象已存在”错误

    首先 我必须强调 我已经尝试了相当长的时间来解决它 但我不知道我错过了什么 或更准确地说 我不明白什么 任何帮助将不胜感激 我有一个名为 static tools 的项目 它编译为静态库 称为静态工具库并且它使用STL 我使用 MD 编译该
  • 查询 std::ostringstream 内容

    是否可以搜索内容std ostringstream不使用std ostringstream str 成员函数创建一个std string寻找 我有以下内容并希望避免构建std string每次调用时都会实例化flush include
  • 在android中将textview放在imageview之上

    我有一个listview 有一个单一的imageview这是 可垂直滚动 我正在尝试放置一个textview在之上Imageview 两个视图都必须可见 是否可以 如果是 如何以编程方式执行 我需要做出哪些改变 list view item
  • 发送 HTTP 标头后,服务器无法修改 cookie

    我正在用 C 创建一个 Web 应用程序 当我的页面加载时 我会触发一个异步线程来处理一些数据 此处理的一部分是更新 cookie 但是 当我将 cookie 保存到响应中时 System Web HttpContext Current R
  • 将单列拆分为四列并计算 R 中的重复模式

    该项目的目的是了解在观察物体时如何获取信息 想象一个对象有这样的元素a b c d e and f 一个人可能会看a并移至b等等 现在 我们希望绘制并了解该人如何浏览给定刺激的不同元素 我有在单列中捕获此运动的数据 但我需要将其分成几列才能
  • SQL随机数不起作用

    declare fieldForceCounter as int declare SaleDate as dateTime declare RandomNoSeed as decimal set fieldForceCounter 1 se