Huu*_*uze 2 sql postgresql insert
我想在"作者"表中为每个作者的"书籍"表中插入记录.换句话说,如果这代表作者表:
> 1 - "Herman Melville"
> 2 - "Stephen King"
> 3 - "Truman Capote"
Run Code Online (Sandbox Code Playgroud)
...然后,插入将在"book"表中产生这些结果:
> 'Hello World' - 1
> 'Hello World' - 2
> 'Hello World' - 3
Run Code Online (Sandbox Code Playgroud)
我有以下INSERT语句(它实际上是一个粗略的例子,但它证明了目标):
INSERT INTO books (title, author_id) VALUES ('Hello World', SELECT id FROM author);
Run Code Online (Sandbox Code Playgroud)
不幸的是,这失败了,我不确定如何从"作者"表中获取每个"id"值.
目前尚不清楚为什么要为每个作者插入相同的条目,但是您可以使用SELECT作为INSERT的源,如下所示:
INSERT INTO books (title, author_id)
SELECT 'Hello World', id
FROM author
Run Code Online (Sandbox Code Playgroud)
编辑:有关更多信息,请查看INSERT 的文档 ; 如您所见,源可以是DEFAULT VALUES,VALUES或查询.