【问题标题】:MYSQL insert into table with one column's data pulled from another tableMYSQL 插入表中,其中一列的数据从另一表中提取
【发布时间】:2015-10-26 06:25:21
【问题描述】:

订单项表
line_item_id
order_id,
quantity,
unit_price,
shipping_price,
business_id,
item_id,

库存表
item_id
pos_code
说明
sku_count
单位价格

当我在 Line items 表中插入时;单价应与库存表中的价格相匹配。我不想依赖客户的数据,而是想插入清单表中存在的内容。

insert into line_items(`order_id`,  `quantity`, `unit_price`, `shipping_price`, `business_id`,`item_id`)
    values(1, 1, select unit_price from inventory where item_id=1, 10, 1, 1);

这个语法不正确。但我不知道如何重写它。

或者我可以使用其他替代方法吗?

【问题讨论】:

    标签: mysql insert insert-update validation


    【解决方案1】:

    我想你只是想要insert . . . select:

    insert into line_items(`order_id`,  `quantity`, `unit_price`, `shipping_price`, `business_id`, `item_id`)
       select 1, 1, unit_price, 10, 1, 1
       from inventory
       where item_id = 1;
    

    【讨论】:

    • @user5118993 。 . .只能回答提出的问题。如果您还有其他问题,请作为another 问题提出。这个版本很清楚只有两个表。我还建议您包括表格布局和 SQL Fiddle。
    • 我误解了答案。现在了解sql是如何工作的。谢谢你的回答。
    猜你喜欢
    • 1970-01-01
    • 2016-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 2014-07-20
    • 2013-04-25
    • 1970-01-01
    相关资源
    最近更新 更多