在 MYSQL 中插入时查找值

发布于 2024-11-06 12:43:28 字数 236 浏览 0 评论 0原文

当将数据插入表中时,我需要能够根据新记录中的条目使用另一个表中的数据填充该表。

例如,我有一个名为纬度的表,创建新记录时不会填充该表。

纬度详细信息存储在名为“区域”的表中,该表具有名为“areaid”的列和一个名为“latitude”的列。

我需要根据新记录中插入的区域 ID 使用正确的纬度更新区域表中的纬度字段。

如果这令人困惑,我很抱歉,如有任何问题,请联系我们。

谢谢

When inserting data into a table I need to be able to populate the table with data from another table based on an entry in the new record.

For example I have a table called latitude that isn't populated when a new record is created.

Latitude details are stored in a table called area which has a column called 'areaid' and one called 'latitude'.

I need the latitude field in the area table to be updated with the correct latitude based on the areaid inserted in the new record.

I am sorry if this is confusing, any questions please getin touch.

Thanks

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

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

发布评论

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

评论(1

帅哥哥的热头脑 2024-11-13 12:43:28

我在这里假设 areaidarea 表中的唯一键或主键。

您可以使用REPLACE INTOINSERT ... ON DUPLICATE KEY UPDATE。如果您还要将纬度保留在 latitude 表中,那么您可以使用触发器来确保在插入 时更新 area 表。纬度表。

CREATE TRIGGER example BEFORE INSERT ON latitude
  FOR EACH ROW BEGIN
    REPLACE INTO area (areaid, latitude) VALUES (NEW.areaid, NEW.latitude);
  END;

I assume here that areaid is a unique or primary key in the area table.

You can use either REPLACE INTO or INSERT ... ON DUPLICATE KEY UPDATE. If you are going to keep the latitude in the latitude table as well then you could use a trigger to ensure that the area table is updated when you insert into the latitude table.

CREATE TRIGGER example BEFORE INSERT ON latitude
  FOR EACH ROW BEGIN
    REPLACE INTO area (areaid, latitude) VALUES (NEW.areaid, NEW.latitude);
  END;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文