select distinct(www.TagID),www.SiteID,TagType,www.EnterTime,
(case when www.TagType =1 then car_name.VehicleID
else man_name.Name end)
as Name_VehicleID from www,car_name,man_name
where (www.TagID = car_name.TagID
or www.TagID = man_name.TagID)
and www.SiteID =1
这段是一条sql语句 where以后的语句,执行不错,但是不是我想要的结果,请高手帮忙!
我本来是想同过,where,执行www.TagID = car_name.TagID ,或者执行www.TagID = man_name.TagID 的,
但是,现在的问题,是必须 man_name,car_name 中都必须有数据,才可以有数据出来。如果任何一张表中没有数据那么
就不能读出数据。
请高手指教小弟我哪里写错了,或者是哪里需要改一下,我怎么感觉,OR 变成了AND在用啊!不懂很迷惑,高手帮忙。在线等待!
(case when www.TagType =1 then car_name.VehicleID
else man_name.Name end)
as Name_VehicleID from www left join car_name on www.TagID = car_name.TagID
left join man_name on www.TagID = man_name.TagID
where www.SiteID =1
(case when www.TagType =1 then car_name.VehicleID
else man_name.Name end)
as Name_VehicleID from www left join car_name on www.TagID = car_name.TagID
left join man_name on www.TagID = man_name.TagID
where www.SiteID =1
or (and www.SiteID =1 and www.TagID = man_name.TagID)?
(case when www.TagType =1 then car_name.VehicleID
else man_name.Name end)as Name_VehicleID
from www
left join car_name on www.TagID = car_name.TagID
left join man_name on www.TagID = man_name.TagID
where
and www.SiteID =1