我有一张桌子,一个班级,还有一张我称之为“课程”的桌子 - 也就是某个特定的人在特定地点教授的课程实例。我想拉一张表,基本上只是根据某些课程参数向我显示哪些类是活动的。例如:我可以连接两个表,只有一个匹配的每个表中的一行MySQL的?
CLASSES class_id|class_name --------|------------ 1|Class One 2|Class Two 3|Different Class etc... COURSES course_id|class_id|room ---------|--------|-------- 1| 3| 1 2| 3| 2 3| 1| 1 4| 3| 1 5| 3| 2 6| 2| 1 etc...
我不知道是否有一种方式,我可以得到类似SELECT classes.* FROM classes JOIN courses ON classes.class_id=courses.class_id WHERE courses.room=1
返回各只有一个类的实例。发生了什么事是,我得到只是发生在室1类,但我发现每一个的多个实例,因为在房间的课程表类的多个实例1
我已经尝试了所有不同种类的JOIN
- 左,右,内部等 - 并且因为我从一张桌子上根据另一张桌子的规格拉出,他们似乎都给了我相同的结果。
所以我越来越:
class_id| class_name |course_id|room --------|--------------|---------|-------- 1|Class One | 3| 1 2|Class Two | 6| 1 3|Diferent Class| 1| 1 3|Diferent Class| 4| 1 etc...
但我只想得到:
class_id| class_name |course_id|room --------|--------------|---------|-------- 1|Class One | 3| 1 2|Class Two | 6| 1 3|Diferent Class| 1| 1 etc...
我可以只JOIN
关于在类的每一行的第一场比赛?我对MySQL很有新意,所以我在表达我想要做的事情时遇到了一些麻烦;我道歉。
另外:我通过PDO
把所有这一切都拉进了PHP - 也许有一种具体的方法可以在PDO
中完成这个任务吗?
如果您只需要COURSES表中的一条记录,那么您需要哪些记录? IE:总是最低的courseid(&room?)值? – 2011-01-26 22:08:41
说实话无所谓。你说得对,我应该说。我只是想要CLASSES数据;我要参加课程的唯一原因是只获得那些具有正确标准的相应课程的课程。 – 2011-01-26 22:29:40