← 返回题库
初级

生成完整出库报表(完整业务周期)

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve():
    import sqlite3
    import pandas as pd
    
    conn = sqlite3.connect(':memory:')
    
    base_url = 'https://liangdaima.com/static/data/crm/state_09/'
    
    tables = ['suppliers', 'customers', 'products', 
              'stock_in', 'stock_in_items', 
              'stock_out', 'stock_out_items']
    
    for table in tables:
        try:
            url = base_url + table + '.csv'
            df = pd.read_csv(url)
            df.to_sql(table, conn, index=False)
        except Exception as e:
            pass
    
    result = conn.execute('SELECT o.出库单号, o.制单日期, o.收货单位, d.物料编码, d.物料名称, d.数量 FROM stock_out o JOIN stock_out_items d ON o.出库单号 = d.出库单号 ORDER BY o.制单日期').fetchall()
    conn.close()
    return result

示例

输入
print(solve())
期望输出
[('CK20260605001', '2026-06-05', '北京数码城', 'HW001', 'Mate 50', 3), ('CK20260605001', '2026-06-05', '北京数码城', 'HW002', 'Mate 50', 2), ('CK20260605001', '2026-06-05', '北京数码城', 'XM001', '小米12X', 5), ('CK20260606001', '2026-06-06', '上海通信市场', 'HW003', 'P50', 2), ('CK20260606001', '2026-06-06', '上海通信市场', 'XM002', '小米12X', 4), ('CK20260606001', '2026-06-06', '上海通信市场', 'XM003', '小米13', 2), ('CK20260615001', '2026-06-15', '广州手机批发中心', 'HW001', 'Mate 50', 5), ('CK20260615001', '2026-06-15', '广州手机批发中心', 'OP001', 'OPPO Find X5', 4), ('CK20260615001', '2026-06-15', '广州手机批发中心', 'XM001', '小米12X', 3), ('CK20260618001', '2026-06-18', '深圳华强北店', 'OP002', 'OPPO Reno8', 4), ('CK20260618001', '2026-06-18', '深圳华强北店', 'VV001', 'vivo X80', 6), ('CK20260620001', '2026-06-20', '杭州数码港', 'XM002', '小米12X', 5), ('CK20260620001', '2026-06-20', '杭州数码港', 'XM003', '小米13', 3), ('CK20260702001', '2026-07-02', '成都电子城', 'AP001', 'iPhone 14', 5), ('CK20260702001', '2026-07-02', '成都电子城', 'HW001', 'Mate 50', 3), ('CK20260708001', '2026-07-08', '北京数码城', 'HW002', 'Mate 50', 4), ('CK20260708001', '2026-07-08', '北京数码城', 'OP001', 'OPPO Find X5', 2), ('CK20260710001', '2026-07-10', '武汉通信广场', 'HW004', 'P50 Pro', 1), ('CK20260710001', '2026-07-10', '武汉通信广场', 'VV001', 'vivo X80', 3), ('CK20260710001', '2026-07-10', '武汉通信广场', 'XM004', '小米13 Pro', 2)]
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码