Mysql从多个动态表中连接列

时间:2013-09-02 21:51:17

标签: mysql

我想问一下是否可以使用一个mysql查询。 图片,我有表'users',它包含有关用户的一般信息。然后有一个表'生肖',其中包含所有黄道带的信息(生肖名称,出生期开始和出生期结束)。

我可以将用户生肖与我要求用户的查询一起使用吗?我的想法可能是这样的:

    SELECT users.*, zodiacs.name AS zodiac
    FROM users,zodiacs
    WHERE zodiacs.period_start <= users.birthdate 
    AND zodiacs.period_end > users.birthdate
    AND zodiacs.calendar = 'chineese'

不要寻找生肖逻辑,我不知道黄道带是否与其他文化不同。但主要的想法是,黄道十二宫表可以在上述期间有更多项目,但是针对不同的日历。

那么,是否可以像这样查询?

1 个答案:

答案 0 :(得分:0)

您忘了在表格中使用JOINS。尝试根据表userszodiacs

的某个列使用JOIN

这样的事情: -

SELECT users.*, zodiacs.name AS zodiac
FROM users INNER JOIN zodiacs ON users.id=zodiacs.id
WHERE zodiacs.period_start <= users.birthdate 
AND zodiacs.period_end > users.birthdate
AND zodiacs.calendar = 'chineese'