SUBSTR(str, pos, len) 函数的参数 pos 的坐标从 1 开始;
%Y 四位数字表示的年份;而 %y 两位数字表示的年份;
%m 两位数字表示的月份(01, 02, ..., 12);
%d 两位数字表示月中的天数(00, 01,..., 31);
%f 可以获得6位的微秒 microsecond;
年份4位,月份2位,天数2位,时分秒6位,毫秒保留3位,总位数为17位;
随机数字ID
SELECT CONCAT(date_format(NOW(), '%Y%m%d%H'), LPAD(FLOOR(RAND()*10000000),7,0)) as idNumber
SELECT UUID(); -- 37747019-90a2-11e9-9806-00505683703f
我们可以配合REPLACE()函数替换掉【-】符号来生成32位的不带【-】符号的随机ID。
SELECT REPLACE(UUID(), '-', ''); -- 62d1556390a211e9980600505683703f
我们也可以配合UPPER()函数将小写字母转换为大写。
CREATE
TRIGGER `trigger_increase_session_id_insert` BEFORE INSERT ON `session_id`
FOR EACH ROW BEGIN
DECLARE rnd BIGINT UNSIG
语句一:SELECT UUID();
例如:5f86850a-6e3c-11ea-b10f-00505687f078
语句二:SELECT REPLACE(UUID(),’-’,’’);
例如:6ae721156e3c11eab10f00505687f078
附:在 MySQL 的 UUID() 函数中,前三组数字从时间戳中生成,第四组数字暂时保持时间戳的唯一性,第五组数字是一个 IEEE 802...
DROP FUNCTION IF EXISTS `getOnlyID`$$
CREATE DEFINER=`root`@`%` FUNCTION `getOnlyID`() RETURNS VARCHAR(17) CHARSET utf8
BEGIN
您可以使用以下简单的MySQL语句来随机生成七位数字ID:
SELECT FLOOR(RAND() * 9e7) + 1e6 AS random_id FROM your_table_name LIMIT 1;
这将在您的表中生成一个七位数的随机ID并将其存储在一个名为random_id的字段中。请注意,此方法生成的数字ID可能不是完全随机的,因为它是从MySQL函数RAND()中获取的伪随机数。如果您需要更加随机的数字ID,可以使用外部库或API来获取。
JevonsNotes: