Mysql 跨层次表查询SQL
我在查询带有子类的表时遇到问题。举例来说,如果我在MySQL数据库中有以下表Mysql 跨层次表查询SQL,mysql,sql,database,Mysql,Sql,Database,我在查询带有子类的表时遇到问题。举例来说,如果我在MySQL数据库中有以下表 userTable: id name gender_id 1 bob 1 .... gender_id term 1 male 2 female .... 性别表: id name gender_id 1 bob 1 .... gender_id term 1
userTable
:
id name gender_id
1 bob 1
....
gender_id term
1 male
2 female
....
性别表
:
id name gender_id
1 bob 1
....
gender_id term
1 male
2 female
....
如何使用
genderTable
中的term
为所有男性编写查询,而不仅仅是使用gender\u id
?您似乎在寻找一个简单的连接。这里不涉及层次结构,genderTable
称为referential表
以下查询将为您提供所有性别为“男性”的用户:
select u.*
from userTable u
inner join genderTable g
on g.gender_id = u.gender_id
and g.term = 'male'