我是学习PostgreSQL的新手,所以我感谢任何帮助。
我正在尝试创建多个表。我希望表的主键是区列+学校列的组合。
这是一个表格设置示例:
CREATE TABLE table1(
school VarChar(50),
division VARCHAR(40),
otherattribute (varchar70),
etc.);
CREATE TABLE table2(
school VarChar(50),
division VARCHAR(40),
otherattribute (varchar70),
etc.);
我想创建另一个表
CREATE TABLE assignID(randomId INTEGER, school VarChar(50), division VARCHAR(40));
然后,我想用分配给该学校和部门组合的randomId替换我的任何表中作为学校和部门组合的任何主键。有没有办法做到这一点?
我想出了一个解决方案,这是我的代码。
我运行了这个脚本:
UPDATE tables SET ID=table1.ID
FROM table1
WHERE tables.schoolName = table1.schoolName
AND tables.divisionName = table1.divisionName;
这会将与表1中的学校和部门组合相关联的序列号添加到具有类似组合的任何表中。
然后,我删除了所有表的“学校”和“部门”列。
我知道这不是最优化的解决方案,但这是我唯一想到的解决方案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句