有时我需要生成大量的合成测试数据,比如几百万行。
通常,当我期望一个表中有一千万行时,我会像下面这样编写查询来生成这个合成数据
SELECT generate_series(1, regexp_replace('10 000 000', ' ', '', 'g')::INTEGER) AS id;但是我被这个无用的regex函数调用和显式的整数转换所困扰。postgres方言中有默认的千位分隔符吗?比如Java和C# (10_000_000)中的下划线,所以我可以这样写上面的查询:
SELECT generate_series(1, 10_000_000) AS id;或者,也许有另一种解决方案可以使代码比这个分隔符更容易理解?
发布于 2020-06-26 01:53:19
你能用科学的符号吗,像这样
select generate_series(1, 1e10)只要您不需要指定系列的确切结尾,它就可以满足您的人体工程学需求
https://stackoverflow.com/questions/62581333
复制相似问题