SQL查询问题:如何获取对应name列并优化现有查询语句
解决方案
1. 获取所需的名称列
你需要针对InFeedStockID再次关联tbl_Stock_List表(用别名区分原关联的表),同时在SELECT子句中添加对应的名称字段(假设名称字段为Stock_Name,如果实际字段名不同请替换)。
2. 优化查询
当前查询中关联了tbl_Machines和tbl_Bom_Route_Metadata但未使用其任何字段,若不需要这些表的数据,可以移除这两个关联,减少不必要的表连接以提升性能。
修改后的SQL语句如下:
SELECT stock.Stock_Code, route.EndItemStockID, stock.Stock_Name AS EndItemName, -- 成品名称 routeD.InFeedStockID, stock_infeed.Stock_Name AS InFeedItemName -- 进料名称 FROM tbl_Bom_Route route INNER JOIN tbl_Stock_List stock ON route.EndItemStockID = stock.Stock_ID INNER JOIN tbl_Bom_Route_Detail routeD ON routeD.BOMRouteID = route.BOMRouteID -- 关联进料的库存表获取名称 INNER JOIN tbl_Stock_List stock_infeed ON routeD.InFeedStockID = stock_infeed.Stock_ID -- 如果需要machines或metadata的数据,取消以下两个JOIN的注释并添加对应字段 -- INNER JOIN tbl_Machines mac -- ON route.MachineID = mac.MachineID -- INNER JOIN tbl_Bom_Route_Metadata routeM -- ON routeM.BomRouteID = route.BOMRouteID
补充说明
- 若你需要
tbl_Machines或tbl_Bom_Route_Metadata中的字段,只需取消对应JOIN的注释,并在SELECT子句中添加所需字段即可。 - 请确保
tbl_Stock_List中存储名称的字段名与示例中的Stock_Name一致,若实际字段不同,替换为真实字段名即可。
内容的提问来源于stack exchange,提问作者Alpha
相关产品推荐
相关产品推荐

