嗯,我对这个很陌生,所以我的问题是。。我正在尝试建立一个多餐厅菜单数据库,经过这么多的结构斗争,我得到了一个。
这是总体结构。
Clients
ID (int 10, PK)
mombre(varchar)
etc etc.(etc)
menucat
menuID (int 10, FK references clients.ID)
IDcat (int 10, PK)
nombre
menuitem
ID (int 10, PK)
catID (int 10, FK references IDcat)
nombre
problem:
到目前为止,我有这个问题:
SELECT c.ID
, c.nombre
, mc.nombre
, mi.nombre
FROM clientes as c
, menuitem as mi
, menucat
JOIN menucat as mc
ON mc.IDcat = mi.cat Id
GROUP
by mc.IDcat
这给我带来了:mc.nombre和mi,nombre fine,正如预期的那样。
但是,c.id和c.nombre的报告好像只有一个注册表。。。我该如何表述这个查询,以便它为我的两个客户机提供各自的菜单?
对不起,我的英语很差,写在这里的技巧也很差。
谢谢。顺便说一句,我正在使用phpMyAdminSQL控制台
1条答案
按热度按时间aoyhnmkz1#
这将返回所有菜单项及其关联的菜单和客户端(假设它们有关联)
考虑重命名表中的列以使数据库中的引用更容易。例如
FK
约束menucat
参考文献clients.ID
应位于名为ClientID
或者类似的东西。一个电话也没有menuID
因为它与客户机有关,而不是菜单。如果你能给我们举一个你想退货的例子,那也会有帮助。