复杂的Mysql数据库连接

时间:2012-08-10 12:45:18

标签: php mysql join

我正在使用旧数据库创建一个新系统并需要一些帮助(因为缺乏经验) 这可能过于复杂,但这就是数据库的设置方式,我无法改变它。

有3张桌子。第1节,第2节和注册人。

第1节和第2节除内容外是相同的。所以它是如何工作的,如果一个人想要在特定的一天预订会话1和会话2,数据库将在会话1和会话2的'id'行中插入说“5”。 'id'是主要索引。

“注册人”中有2行包含一个列表(例如5,6,7),其中包含注册人名称以及在会话1和会话2中找到的一些ID。因此,如果您想知道是否为会话1预订的人,会话的ID将在注册人会话1列表中。

像我说的那样。复杂。

我可以毫不费力地进行单独查询

SELECT * FROM Session_1 WHERE id IN ($registrant_session_1 /* This is a single quote implode for the ouput of registrant_session_1 */ )"

SELECT * FROM Session_2 WHERE id IN ($registrant_session_2 /* This is a single quote implode for the ouput of registrant_session_2 */)

我需要帮助创建一个连接它们以便同时输出的查询。所以理论上我首先进行会话检查,然后根据id加入它们。

2 个答案:

答案 0 :(得分:0)

也许你可以使用“union”条款 FROM Session_1 WHERE Session_1.id IN ($registrant_session_1 /* This is a single quote implode for the ouput of registrant_session_1 */ ) UNION (SELECT * FROM Session_2 WHERE Session_2.id IN ($registrant_session_2 /* This is a single quote implode for the ouput of registrant_session_2 */)

答案 1 :(得分:0)

这是我在第一次学习MySQL http://www.tizag.com/mysqlTutorial/mysqljoins.php

时发现特别有用的网站