如何从具有条件的两个表中进行选择

时间:2014-03-02 22:13:15

标签: php mysql

有两个表:

表1:

 id = 0      name=JOHN           speciality =dentist  
 id = 1      name=ABY            speciality= dentist  
 id = 2      name = SARA         speciality= cardiologist  

,...
  表2:

 id = 0    name = JOHN           city=paris
 id = 1    name = ABY            city=tokio
 id = 1    name = SARA           city=london

 $city='pa';  

 $speciality='dentist';

(这两个变量来自用户已进入的搜索表单)

我想这样说:

select * FROM Table 1 WHERE speciality=$speciality AND city LIKE %$city% (from Table2) ;
我应该怎么说? (很明显,两个表的每一行的id都相同,每个id代表一个人)

1 个答案:

答案 0 :(得分:1)

试试这样:

   select t1.* FROM Table 1 as t1,table2 as t2 WHERE t1.speciality='$speciality' AND t1.city  LIKE %$city%  and t1.name=t2.name;

如果两个表的行ID相同,则:

   select t1.* FROM Table 1 as t1,table2 as t2 WHERE t1.speciality='$speciality' AND t1.city  LIKE %$city%  and t1.name=t2.name and t1.id=t2.id ;