小智 27
SET [Color] = '#' + CONVERT(VARCHAR(max), CRYPT_GEN_RANDOM(3), 2)
Run Code Online (Sandbox Code Playgroud)
jbr*_*ahy 17
下面介绍的逻辑包含在MySQL的一个函数中.它非常易于使用.
mysql> select random_color();
+----------------+
| random_color() |
+----------------+
| #8F50B4 |
+----------------+
1 row in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
它可以一遍又一遍地调用,每次都会有不同的颜色.
CREATE FUNCTION `random_color`() RETURNS char(7) CHARSET latin1 DETERMINISTIC
BEGIN
DECLARE str CHAR(7);
SET str = concat('#',SUBSTRING((lpad(hex(round(rand() * 10000000)),6,0)),-6));
RETURN str;
END;
Run Code Online (Sandbox Code Playgroud)
这将为您提供MySQL中的六位十六进制数字代码
SELECT concat('#',SUBSTRING((lpad(hex(round(rand() * 10000000)),6,0)),-6))
Run Code Online (Sandbox Code Playgroud)
这是一个很棒的颜色
SELECT *,
concat('#',SUBSTRING((lpad(hex(@curRow := @curRow + 10),6,0)),-6)) AS color
FROM table
INNER JOIN (SELECT @curRow := 5426175) color_start_point
Run Code Online (Sandbox Code Playgroud)
猜猜你需要使用 rand - https://dev.mysql.com/doc/refman/5.0/en/mathematical-functions.html#function_rand - 即
INSERT INTO ... VALUES ( ... , ROUND(RAND(255 * 255 * 255)), ...)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8909 次 |
最近记录: |