我在这里和其他网站上看了很多问题,仍然无法理解为什么我的SQL语句没有返回任何内容。
基本上我有一个名为'takeaway'的数据库分为两个表categories
和menuitems
。
我想输出每个类别名称catname
和与每个类别相关的菜单项,例如Cod Fillet
是类别2'catid'的一部分。
类别表字段:
catid
catname
菜单项表字段:
itemid
itemname
itemsize
itemprice
categoryid (foreign key)
我使用了以下SQL语句但没有产生任何结果
select
menuitems.itemname,
menuitems.size,
menuitems.price,
menuitems.categoryid,
categories.catid,
categories.catname
FROM categories
RIGHT JOIN menuitems
ON categories.catid=menuitems.categoryid
我尝试过INNER JOIN和LEFT JOIN。没有任何效果。我想这样输出:
Fish
- Cod Fillet Large: £4.90 Medium: £3.90
等等......很明显我是用Mysql和PHP做的。
请有人帮忙指出我哪里出错了?
谢谢
Dan
select
menuitems.itemname,
menuitems.itemsize,
menuitems.itemprice,
menuitems.categoryid,
categories.catid,
categories.catname
FROM categories AS categories
Left JOIN menuitems AS menuitems
ON categories.catid = menuitems.categoryid;
我已经解决了以下问题...你可以在下面链接查看结果...希望它能帮到你..
我已经创建了表格作为要求......
http://sqlfiddle.com/#!9/082891/2
select
Menuitems.itemname,
Menuitems.itemsize,
Menuitems.itemprice,
Menuitems.categoryid,
Categories.catid,
Categories.catname
FROM Categories
Left JOIN Menuitems
ON Categories.catid = Menuitems.categoryid;
从这个结果,您可以定制您的需求......