select case truck.TransStatus 
when 'OnWay' then (select app.Lng,app.lat from Mem_TrackApp app) 
else (select c.AreaFrom,c.AreaTo from CargoSource c ) end 
from Mem_Truck truck
如上主表是 Mem_Truck 我想根据 Mem_Truck 的TransStatus的值来确定我要查询CargoSource还是 Mem_TrackApp。注意看,关联表的不一样返回的列值也不一样。这里TransStatus 有'OnWay'和'Other'两个值,不是很熟悉sql 跪求帮助。网上的帖子基本都是选择用case when。但是case..when 貌似返回的是目标列相同。与我的业务逻辑不相符。