【发布时间】:2013-04-20 06:43:53
【问题描述】:
我的数据库中有四个表 - 一个名为 kursplan,第二个表是 kursplan_kurse,第三个表是 kursplan_kursraum,第四个表是 kursplan_trainer。
第一个表结构:id,club_id,Tag,Kurse_namen,from,to,Kursleiter,kursraum
这里的 club_id 表示我的用户表中的用户 ID
id | club_id | Tag |Kurse_namen | Kursleiter| kursraum
____________________________________________________________________________________________
1 | 35 | Monday |2 |2 | 4
2 | 35 | tue |3 |3 | 3
3 | 35 | wen |3 |3 | 3
4 | 12 | thu |1 |2 | 4
第二个表结构:表名[kursplan_kurse]
id | club_id | Kurse_namen
______________________________________
1 | 35 | Kurse1
2 | 35 | Kurse2
3 | 35 | Kurse3
4 | 35 | Kurse4
第三张表结构:表名[kursplan_kursraum]
id | club_id | kursraum
______________________________________
1 | 35 | kursraum1
2 | 35 | kursraum2
3 | 35 | kursraum3
4 | 35 | kursraum4
第4个表结构:表名[kursplan_trainer]
id | club_id | Kursleiter
______________________________________
1 | 35 | Kursleiter1
2 | 35 | Kursleiter2
3 | 35 | Kursleiter3
4 | 35 | Kursleiter4
我的选择查询是
$query = "SELECT * FROM `kursplan` WHERE `club_id` = '35' AND `Tag` = 'Monday' ";
我得到这种格式的结果
Kurse_namen | kursraum |Kursleiter |
=====================================
2 | 4 |2 |
现在,我想要实现的是设置一个 JOIN 查询以从所有 3 个表中获取值 分别是第 2、3、4 个表
我需要这种格式的结果我的意思是我想要名字而不是数字
Kurse_namen | kursraum | Kursleiter
______________________________________________
Kurse2 | kursraum4 | Kursleiter2
请帮帮我。
【问题讨论】:
-
修正你帖子的格式,现在它不可读
-
首先不要执行
select *.执行select a.field, b.field c.field其中 a b 和 c 是不同的表标识符FROM table a, table b, table c WHERE a.field=b.field然后使用它来计算如何进行连接。 codinghorror.com/blog/2007/10/… -
你的 mysql 设置很糟糕。如果您的表主键行不全部命名为“id”会更好。为什么“club_id”根本不是主键?并请告诉我们桌子的名称(我想我们都可以数自己)