[英]PostgreSQL randomize foreign key
我在 Postgres 中有 2 个表(库存表和事件表)。 在库存表中,我的主键由 8 个字符串组成。 示例“03163161”。
现在我必须使用库存表上的主键将它们随机输入到事件表中。
我可以通过什么方式做到这一点? 我试过用谷歌搜索它,但似乎没有人有解决方案,我正在尝试尝试如何将库存表的 PK 随机输入到事件表中,因为数据几乎是 3k。
更新#1
我试过使用下面的代码
INSERT INTO dashboard.event(terminal_id) VALUES (SELECT terminal_id FROM dashboard.inventory)
但我收到错误:
ERROR: syntax error at or near "SELECT"
LINE 1: INSERT INTO dashboard.event(terminal_id) VALUES (SELECT term...
^
SQL state: 42601
Character: 50
不要将关键字 VALUES 与插入中的选择一起使用。 看到这个问题:
从 PostgreSQL 中的子查询更新或插入(多行和多列)
INSERT INTO dashboard.event(terminal_id)
SELECT terminal_id
FROM dashboard.inventory --should work
我认为您需要“引用”关键字。 例如:
https://www.postgresql.org/docs/current/ddl-constraints.html
create table inventory
(
id INTEGER NOT NULL UNIQUE,
... other fields
);
create table events
(
eid INTEGER REFERENCES inventory(id),
... other fields
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.