我需要在引用另一个表中的id字段的字段中插入一个字段。 它要去的id字段旁边是字段' test' (列 - 代码描述,表格类别)和来自单词“评估”旁边的id字段。 (列类别描述,表格类别)
INSERT INTO codetype
(typecategoryid)
Where codedescription='test'
SELECT id FROM typecategory WHERE categorydescription='Assessment Types'
有很多插入整列的例子,但是没有人写过如何从另一个表插入单个字段。
表 - 代码类型
id bigserial主键
codedescription varchar
typecategoryid bigint ID列上的typecatogory外键
表 - typecategory ID大串口主键 categorydescription varchar
答案 0 :(得分:0)
如果列已经存在且表中的其余列中已有记录,那么您需要UPDATE
语句,而不是INSERT
。
看起来这篇文章可能会对您有所帮助:Update a column of a table with a column of another table in PostgreSQL
也许
UPDATE codetype c
SET c.typecategoryid = t.id
FROM typecategory t
WHERE c.codedescription = 'test' and t.categorydescription='Assessment Types'