是否有可能每次使用 xdmp:random() 或 Marklogic 中的其他方式生成一个 6 位唯一随机数
Is there a possibility of generating a 6 digit unique random number every time with xdmp:random() or some other way in Marklogic
我尝试使用 xdmp:random(999999)
但它有时会生成一个 5 位数字的值,有时会生成一个 6 位数字的值 - 有什么方法可以每次都获得唯一的 6 位数字值吗?
最简单的是使用 fn:format-number
:
用零填充
format-number(xdmp:random(999999), '000000')
或者,您也可以查看 sem:uuid-string
,它使用固定的字符串长度提供更好的随机结果。
HTH!
如果前导零不起作用,请确保您的基值是 100,000 并增加到 999,999。
xdmp:random(899999) + 100000
我尝试使用 xdmp:random(999999)
但它有时会生成一个 5 位数字的值,有时会生成一个 6 位数字的值 - 有什么方法可以每次都获得唯一的 6 位数字值吗?
最简单的是使用 fn:format-number
:
format-number(xdmp:random(999999), '000000')
或者,您也可以查看 sem:uuid-string
,它使用固定的字符串长度提供更好的随机结果。
HTH!
如果前导零不起作用,请确保您的基值是 100,000 并增加到 999,999。
xdmp:random(899999) + 100000