gpt4 book ai didi

python - 将列表值插入不同的行,同时保留其他列的最新值

转载 作者:行者123 更新时间:2023-11-30 21:40:42 25 4
gpt4 key购买 nike

我有这样的数据存储在一个文件中:

name    last_name     class
b bc ['1','2','3']

现在我想把它插入到 MySql 的表中,我希望输出看起来像这样:(id 是一个自增字段)

id       name    last_name     class
1 b bc 1
2 b bc 2
3 b bc 3

到目前为止,我能够想出这段代码,但它将整个列表存储在一个单元格中:

result=('C://heli.csv') 
count=0
db = MySQLdb.connect("127.0.0.1", "root", "****", "myblog", local_infile=True,use_unicode=True, charset="utf8")
cursor = db.cursor()
cursor.execute("LOAD DATA LOCAL INFILE '%s' INTO TABLE dru FIELDS TERMINATED by '$' LINES TERMINATED BY '\n' (keyword,indication,name,dr_id,synonyms) SET id = NULL" % (result,))
db.commit()
count += 1
db.close()
print(count)

是否有可能像我感兴趣的那样分离出列表的值?

实际数据是这样的:用于治疗 $bivalirudin$['db00006', 'btd00076', 'expt03302', 'biod00076', 'db02351']$['bivalirudina', 'bivalirudinum', 'hirulog']

最佳答案

我最近在 MySQL 中做了这个。这绝对不是最好的解决方案,但它会让您到达那里。

如果您可以将原始数据放入 MySQL 表中,则可以使用 SubString 分离出每个类,然后插入到新表中。

例如

select
name,
last_name,
Substring_index(Substring_index(class, ',', 1), ',', -1) as class
from data;

会产生-

name    last_name     class
b bc 1

完整代码在这里-

http://sqlfiddle.com/#!9/c40a01/1

关于python - 将列表值插入不同的行,同时保留其他列的最新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51775250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com