如何解决通过按特定顺序搜索列或位置来查找和打印特定值的最佳方法是什么?
我正在尝试使用 Python 执行此操作,但我也可以访问 sql。我已经包含了一个简单的示例图片,但我正在使用的数据框有 1000 多个项目。基本上我需要找到一种方法来搜索数据框
如果整个数量在 FR 中,则停止并打印每个项目编号、库位和 WH 代码。如果整个数量不在 FR 中,则接下来查看 PV,然后查看 LH,直到达到完整数量。
解决方法
在 SQL 中: 您可以运行此查询以获取结果:
SELECT
-- Select relevant columns
*
FROM
(
SELECT
"Item Number","Qty Needed","FR Qty","PV Qty","LH Qty","WH Code","Bin Loc.",custom_order,(
CASE
WHEN row_val = "Qty Needed" THEN True
ELSE False
END
) AS selected
FROM
(
SELECT
table1."Item Number",table1."Qty Needed",table1."FR Qty",table1."PV Qty",table1."LH Qty",table2."WH Code",table2."Bin Loc."
-- Creating a custom order based on WH code,(
CASE
WHEN table2."WH Code" == 'FR' THEN 1
WHEN table2."WH Code" == 'PV' THEN 2
WHEN table2."WH Code" == 'HR' THEN 3
ELSE 4
END
) AS custom_order
-- Will be used for matchin quantity available with quantity required,ROW_NUMBER() OVER(PARTITION BY table1."Item Number" ORDER BY custom_order ASC) AS row_val
FROM
df2 AS table1
LEFT JOIN
df1 AS table2
ON
table1."Item Number" = table2."Item Number"
ORDER BY
table1."Item Number",custom_order
)
)
WHERE
selected = True
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。