如何在mysql中为子表创建多个别名
问题描述:
在我的公司,我们实际上是在仓库之间转移物料时引用了特定的生产订单编号。在输入生产订单时,在不同工作站之间转移的物料将显示为行。如何在mysql中为子表创建多个别名
select
ste.production_order as "Production Order:Link/Production Order:120",
ste_item.qty as "Qty:Float:60",
ste_item.s_warehouse as "Source Warehouse:Data:120",
ste_item.t_warehouse as "Target Warehouse:Data:120"
from
`tabStock Entry` ste INNER JOIN `tabStock Entry Detail` ste_item ON (ste.name = ste_item.parent and ste.docstatus = 1 and ste.purpose in ('Material Transfer'))
现在我打算为子表股票输入详细信息创建别名,这样我可以从第一别名选择仓库和添加邻因此而不是行出现的一切都将出现在列仓库但是为子表创建别名不会显示任何内容。
我试着用这个代码:
select
ste.production_order as "Production Order:Link/Production Order:120",
ste_item.qty as "Cutting Qty:Float:60",
ste_item1.qty as "Forging Qty:Float:60"
from
`tabStock Entry` ste JOIN `tabStock Entry Detail` ste_item ON (ste.name = ste_item.parent and ste.docstatus = 1 and ste_item.t_warehouse in ('Cutting - OMMIFORGE'))
JOIN `tabStock Entry Detail` ste_item1 ON (ste.name = ste_item1.parent and ste.docstatus = 1 and ste_item1.t_warehouse in ('Forging - OMMIFORGE'))
家伙任何帮助吗?
感谢
答
我想你想要left join
:
select ste.production_order as "Production Order:Link/Production Order:120",
ste_item.qty as "Cutting Qty:Float:60",
ste_item1.qty as "Forging Qty:Float:60"
from `tabStock Entry` ste left join
`tabStock Entry Detail`
ste_item
on ste.name = ste_item.parent and
ste.docstatus = 1 and
ste_item.t_warehouse in ('Cutting - OMMIFORGE') left join
`tabStock Entry Detail` ste_item1
on ste.name = ste_item1.parent and
ste.docstatus = 1 and
ste_item1.t_warehouse in ('Forging - OMMIFORGE');
我已经尝试过LEFT JOIN和各种JOIN语句,只JOIN和INNER JOIN提供相关的结果,在这种情况下,JOIN语句第二个别名不起作用。请引导我。谢谢 – Ragav
@Ragav。 。 。它怎么不起作用? –
真的我无法辨认出来。 Mysql在这种情况下奇怪地工作?你能指导我吗?谢谢 – Ragav