select b.field1,b.field2,a.fieldA,a.fieldB....
from a,b
where a.x=b.x
and a.y=b.y

解决方案 »

  1.   

    select a.ClassName as 班级名,b1.TeacherName as 班主任名,b2.TeacherName as 数学老师名,b3.TeacherName as 语文老师名
    from 班级表 a,教师表 b1,教师表 b2,教师表 b2
    where a.M_No=b1.TeacherNo
    and a.Math_No=b2.TeacherNo
    and a.Chin_No=b3.TeacherNo
      

  2.   

    select b.field1,b.field2,a.fieldA,a.fieldB....
    from a,b
    where a.x=b.x
    and a.y=b.y这样的语句好象效率不高.
    采用inner join好多了.我曾经又这样的写法在一个一千多条记录的两表连接中发现很慢,分析了一下原因, 
    用where子句处理时,数据库首先产生一个笛卡尔集,然后进行条件筛选.使用join并加join条件则在此之前进行判断产生最终结果.
    因此后者比前者快,尤其在记录比较多的情况下.