我有一个表'booking_summary',它存储方法的类型(方法=空中或海上)。我必须根据方法列将此表与其他两个表之一连接起来。
如果方法是Air,那么要加入的表是booking_air,如果是sea,那么它是booking_sea。我不想在这个特定页面上运行多个查询。
这是我最近的尝试,显然失败了。带有别名的 table_name 是我在同一个查询中想要的表。
$sql = "select case when a.shipping_method = 'Sea' then 'booking_sea' else 'booking_air' end 'table_name',
case when a.user_id ='$active_id' then 'y' else 'no' end 'generate_access',
case when c.mbl is NULL then 'Pending' else c.mbl end 'mbl_status',
case when c.hbl is NULL then 'Pending' else c.hbl end 'hbl_status',
a.*,b.user_name
from booking_summary a
left join registered_users b
on a.user_id = b.user_id
left join table_name c
on a.id = c.id
where (a.user_id = '$active_id' or a.forwarder='$active_id')";
任何建议都会非常有帮助。谢谢