使用CSV创建SQL选项卡

2024-10-16 22:31:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个csv文件,格式如下:

+--------------+--------+--------+--------+
| Description  | brand1 | brand2 | brand3 |
+--------------+--------+--------+--------+
| afkjdjfkafj  |      1 |      0 |      0 |
| fhajdfhjafh  |      1 |      0 |      0 |
| afdkjfkajljf |      0 |      1 |      0 |
+--------------+--------+--------+--------+

我想编写一个python脚本来读取csv并用sql创建一个表。我希望表格有描述和衍生品牌。如果csv的“品牌名称”列中有一个,则说明与该品牌关联。然后我想创建一个带有描述和相关品牌名的sql表。在

表格将是:

^{pr2}$

到目前为止,我已经编写了读取csv的代码,并将描述列为一个列表。在

df = pd.read_csv(SOURCE_FILE, delimiter=",")
descriptions = df['descriptions'].tolist()

请提供一些指导,如何阅读文件和实现这一点,因为我是如此迷失。谢谢!在


Tags: 文件csvdfsql格式description表格品牌
1条回答
网友
1楼 · 发布于 2024-10-16 22:31:05

我刚刚在dba.stackexchange.com上回答了一个类似的问题,但以下是基本问题

创建表。。。在

create table myStagingTable (Description varchar(64), Brand1 bit, Brand2 bit, Brand3 bit)

然后,如果第一行有列标题,则将大容量插入其中,但忽略第一行。在

^{pr2}$

现在,您的数据将在一个表中,就像它在excel中一样文件。到将它插入到最后的表中,可以使用IIF和{}

insert into finalTable
select distinct
    [Description]
    ,DerivedBrand = coalesce(iif(Brand1 = 1,'Brand1',null),iif(Brand2 = 1,'Brand2',null),iif(Brand3 = 1,'Brand3',null))
from myStagingTable

See a DEMO HERE

相关问题 更多 >