MySQL,'SELECT'列来自同一数据库中的3个不同的表?

时间:2014-05-06 11:44:17

标签: mysql sql

我需要从三个单独的表中提取信息。两个看起来有相关的主键,两个看起来有相关的外键。我尝试了许多不同种类的JOIN陈述,但无济于事。我需要选择;

order_date . . order_time . . order_id . . item_id . . item_qty . . item_name . . menu_type . . item_name . . item_cost

从这些表中;

<p>order_id (primary key)</p>
<p>item_id (foreign key)</p>
<p>item_qty</p>

ORDER

<p>order_id (primary key</p>
<p>order_date</p>
<p>order_time</p>

菜单

<p>item_id (primary key)</p>
<p>menu_type</p>
<p>item_name</p>
<p>item_cost</p>
<p>item_month</p>

任何帮助都会得到更多的赞赏,而不是这里可以表达的言语!我已经在这里待了几个小时。谢谢!

是的我只需要查询输出的结果。

*编辑我试过这个和类似的 -

SELECT ORDER.order_date, ORDER.order_time, ITEMS.order_id, ITEMS.item_id, ITEMS.item_qty, MENU.item_name, MENU.item_cost, MENU.menu_type FROM 'ORDER' INNER JOIN 'ITEMS' ON ORDER.order_id = ITEMS.order_id INNER JOIN 'MENU' ON MENU.item_id = ITEMS.item_id ORDER BY order_id;

o.k。谢谢你们的帮助。这是我的第一篇帖子,抱歉

标签。似乎无法以任何其他方式列出表格。无论如何 - 谢谢你的帮助。

干杯。

2 个答案:

答案 0 :(得分:0)

select * 
from menu m, order o, items i 
where m.item_id=i.item_id and i.order_id=o.order_id

根据您想要的结果添加另一个where子句

答案 1 :(得分:0)

在SQL中将'改为`。

SELECT `ORDER`.order_date, `ORDER`.order_time, `ITEMS`.order_id, `ITEMS`.item_id, `ITEMS`.item_qty, `MENU`.item_name, `MENU`.item_cost, `MENU`.menu_type 
FROM `ORDER` INNER JOIN `ITEMS` ON `ORDER`.order_id = `ITEMS`.order_id INNER JOIN `MENU` ON `MENU`.item_id = `ITEMS`.item_id ORDER BY `ORDER`.order_id;

ORDER BY字段order_id中放置您的表格。