如果你在每个表的至少一个条目:
(生硬的和愚蠢的,但它的工作原理)
SELECT *
FROM usertb, professiontb, generalinfo
WHERE usertb.email=professiontb.email AND professiontb.email=generalinfo.email AND usertb.funcarea=2 AND professiontb.experience>=3 AND generalinfo.location='Sydney';
如果你没有在每个表中的一项,我建议是使用LEFT JOIN语句。
SELECT * FROM usertb WHERE usertb.funcarea=2
LEFT JOIN professiontb ON(usertb.email=professiontb.email AND professiontb.experience>=3)
LEFT JOIN generalinfo ON(usertb.email=generalinfo.email AND generalinfo.location='Sydney');
因为,您应该从usertb中获取所有行,即使其他表中存在一些缺失的行。
希望它会有所帮助。
Vincent