【发布时间】:2022-01-07 09:19:27
【问题描述】:
谁能给我一些想法来生成列长为 4 的本机 oracle 数据库字母数字序列,如 000A、000B 等。我需要这个序列的 200k 或更多记录。
非常感谢任何想法/解决方案。
提前致谢
【问题讨论】:
标签: database database-design oracle11g oracle-sqldeveloper oracle-sql-data-modeler
谁能给我一些想法来生成列长为 4 的本机 oracle 数据库字母数字序列,如 000A、000B 等。我需要这个序列的 200k 或更多记录。
非常感谢任何想法/解决方案。
提前致谢
【问题讨论】:
标签: database database-design oracle11g oracle-sqldeveloper oracle-sql-data-modeler
如果您希望 SELECT 语句生成十六进制值,则:
SELECT TO_CHAR(LEVEL, 'FM0000X')
FROM DUAL
CONNECT BY LEVEL <= 200000;
如果您想要SEQUENCE,那么它们只会生成数值;但是,您可以将其输出包装在相同的 TO_CHAR 函数中:
CREATE SEQUENCE table_name__id__seq;
CREATE TABLE table_name (
id VARCHAR2(5)
);
INSERT INTO table_name (id)
VALUES (TO_CHAR(table_name__id__seq.NEXTVAL, 'FM0000X'));
SELECT * FROM table_name;
输出:
ID 00001
db小提琴here
【讨论】: