2014-01-09 46 views
0

我想知道是否可以从两个不同的表插入数据(通过选择我想要的列)并将它们插入到新表中。将数据插入到两个较旧表的新表中

这是我的查询,它似乎没有工作。

INSERT INTO book2.orders_bought (`id`, `sold_order_id`, `sold_order_item_id`, `item_id`, 
`status`, `card_name`, `supplier_name`, `total`, `date_ordered`) 
SELECT `order_id`, `bought_order_id`, `oi.id`, SUBSTR(sell_link, 97, 20), `status`, 
`card_name`, `supplier_name`, `total`, `date` 
FROM book1.orders_buy, book1.order_items oi 

注:我想从表中提取ORDER_ITEMS唯一领域是id

+1

如何books1.order_buy连接book1.order_items? order.id是否在book.order_items中?如果是这样你需要一个JOIN。如果您指出错误,也很有帮助。 – tofutim

+0

@tofutim order_items.id = orders_by.id,你是说这只适用于我加入表格的情况吗? –

+0

是order_buy和order_items的一对一吗?更好地显示orders_buy和order_items的模式 – tofutim

回答

1
INSERT INTO book2.orders_bought (
    `id`, `sold_order_id`, `sold_order_item_id`, `item_id`, 
    `status`, `card_name`, `supplier_name`, `total`, `date_ordered`) 
SELECT 
    `b.order_id`, `bought_order_id`, `oi.id`, SUBSTR(sell_link, 97, 20), 
    `status`, `card_name`, `supplier_name`, `total`, `date` 
FROM book1.orders_buy b 
LEFT JOIN book1.order_items oi ON oi.order_id = b.order_id