kratos_liu
LKratos_大师兄
2017-07-22 09:43

mysql 列值不同,选择关联的表不同

  • mysql
  • sql

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 貌似返回的是目标列相同。与我的业务逻辑不相符。

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答