如何将值插入到 postgresql 中已有的表中?

发布于 2025-01-09 06:06:01 字数 515 浏览 2 评论 0原文

我在 postgresql 中有一个名为 order_facts 的现有表。

运行 select * from order_facts 会得到这个: 如您所见,order_date 为空,我想用另一个表中的数据填充它。 为此,我使用了以下代码:

insert into order_facts(order_date)
select day_key
from "Day" as d, orders as o
where d.fulldate = o.order_date;

但这会在表格底部附加 day_key 值像这样< /a> 我应该在插入命令中更改什么才能让它开始从第 1 行而不是行尾插入 day_key?

I have an already existing table in postgresql called order_facts.

Running select * from order_facts gets you this:
as you can see order_date is null and I'd like to populate it with data from another table.
To do that i used the following code:

insert into order_facts(order_date)
select day_key
from "Day" as d, orders as o
where d.fulldate = o.order_date;

But this appends the day_key values at the bottom of the table like so
What do I change in my insert command to get it to start inserting the day_key from row 1 and not the end of the row?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

泅人 2025-01-16 06:06:01

您需要使用UPDATE而不是INSERT

例如

update order_facts
set order_date = d.day_key
from "Day" as d, orders as o
where d.fulldate = o.order_date
and order_facts.order_id = o.order_id

You need to use UPDATE instead of INSERT.

e.g.

update order_facts
set order_date = d.day_key
from "Day" as d, orders as o
where d.fulldate = o.order_date
and order_facts.order_id = o.order_id
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文