select * from tableA where tableA.ap_no in ( select ap_no from tableB where tableB.ps_no in (select ps_no from tableC where os_no=某个值) )请高手帮我看看这个语句可以怎么写效率高点
select a.* from tablea a , tableb b , tablec c where a.ap_no = b.ap_no and b.ps_no = c.ps_no and c.os_no=某个值
select A.* From TableA A Join TableB B on B.ap_no = A.ap_no Join TableC C on C.ps_no = B.ps_no where C.os_no = value
select a.* from tablea a , tableb b , tablec c where a.ap_no = b.ap_no and b.ps_no = c.ps_no and c.os_no=某个值select a.* from tablea a inner join tableb b on a.ap_no = b.ap_no inner join tableb c on b.ps_no = c.ps_no where c.os_no=某个值
select * from tableA , tableB ,tableC where A.ap_no=B.ap_no AND B.ps_no=C.ps_no AND os_no=某个值
求证一下,dawugui ,之前有一个培训的老师提过一句,说 from tablea,tableb,tablec 这样的可能以后会被取缔。不知道是真是假?
select * from tableA , tableB ,tableC where A.ap_no=B.ap_no AND B.ps_no=C.ps_no AND os_no=某个值select A.* From TableA A Join TableB B on B.ap_no = A.ap_no Join TableC C on C.ps_no = B.ps_no where C.os_no = value两种类型哪个效率高点呢
from tablea a , tableb b , tablec c
where a.ap_no = b.ap_no and b.ps_no = c.ps_no and c.os_no=某个值
select A.*
From TableA A
Join TableB B on B.ap_no = A.ap_no
Join TableC C on C.ps_no = B.ps_no
where C.os_no = value
from tablea a , tableb b , tablec c
where a.ap_no = b.ap_no and b.ps_no = c.ps_no and c.os_no=某个值select a.* from tablea a
inner join tableb b on a.ap_no = b.ap_no
inner join tableb c on b.ps_no = c.ps_no
where c.os_no=某个值
where A.ap_no=B.ap_no AND B.ps_no=C.ps_no
AND os_no=某个值
求证一下,dawugui ,之前有一个培训的老师提过一句,说
from tablea,tableb,tablec 这样的可能以后会被取缔。不知道是真是假?
JOIN 是要ON的,
而A,B这样可以不用WHERE 相当于CROSS JOIN
where A.ap_no=B.ap_no AND B.ps_no=C.ps_no
AND os_no=某个值select A.*
From TableA A
Join TableB B on B.ap_no = A.ap_no
Join TableC C on C.ps_no = B.ps_no
where C.os_no = value两种类型哪个效率高点呢