tsql - 如何在 T-SQL 中生成浅色随机颜色
问题描述
我已经在 T-SQL 2012 中运行了存储过程,并被归档以生成随机的十六进制颜色,除了生成的十六进制代码是深蓝色、深绿色等深色组合之外,所有工作正常。我需要生成浅色方案,怎么能我这样做。
SELECT
RecordId,
CONVERT(VARCHAR(max), CRYPT_GEN_RANDOM(3), 2)as [BarColour]
解决方案
您使用的方法将产生浅色和深色。如果你只得到深色,那只是运气不好。
只生成浅色的起点是做这样的事情。它随机生成 RGB 值并将它们连接到您的十六进制代码中。
SELECT CONCAT(RIGHT(CONVERT(VARCHAR(100),CAST((ABS(CHECKSUM(NEWID()) % 135) + 120) AS VARBINARY),2),2),RIGHT(CONVERT(VARCHAR(100),CAST((ABS(CHECKSUM(NEWID()) % 135) + 120) AS VARBINARY),2),2),RIGHT(CONVERT(VARCHAR(100),CAST((ABS(CHECKSUM(NEWID()) % 135) + 120) AS VARBINARY),2),2))
我反复运行它,一次输出 10 个结果,然后我得到了一系列浅灰色和粉彩。这种方法不会给你任何纯色,因为它完全避免了低范围值。
推荐阅读
- php - 验证失败时如何在 Symfony 4 中获取表单字段的值?
- php - 为“item”表创建(复合)主键,其中增量“item_id”根据“order_id”外键重置
- regex - Python3 - 在写入文件之前过滤文本
- java - JSF 页面中组件(面板)的可变顺序
- excel - 自动在excel上创建分层数据(组织结构图)
- python - 我正在编写一个递归函数,它将根据 n 创建存储桶
- json - 无法为我的“地图”赋值
` json-decode 后的变量 - node.js - Visual Studio Code 调试器将 node_module 映射到本地文件夹
- sql - 使用视图中的动态变量创建数据透视表
- python - 不推荐使用基本身份验证时的 Python O365 身份验证