如何在Python中比较两个SQLite数据集并搜索相似之处?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Python中比较两个SQLite数据集并搜索相似之处?相关的知识,希望对你有一定的参考价值。

基本上,我有两个数据库。一个用于“学生”,一个用于“老师”。教师数据库已保存在服务器上,学生数据库将通过用户输入创建。

这是给老师的(也分别保存在teacher.db文件中)

c.execute(“””CREATE TABLE teacher( 
ID varchar,
name text
age integer
interest1 varchar
interest2 varchar
)”””) 
conn.commit()
conn.close()

例如:c.execute(“INSERT INTO student VALUES (‘Lisa’, ‘35’, ‘spanish’, ‘productivity’)

这是学生的表格,数据将保存在名为student.db的单独文件中

c.execute(“””CREATE TABLE student( 
ID varchar,
name text
age integer
interest1 varchar
interest2 varchar
)”””) 
conn.commit()
conn.close()

一个人的例子看起来像这样:

c.execute(“INSERT INTO student VALUES (‘Max’, ‘23’, ‘spanish’, ‘programming’)” 

现在,我想比较创建第二个数据库的用户输入。我们可以看到双方都使用了“西班牙语”的价值。现在我想创建一个这样的算法:如果学生使用的关键字等于教师数据库中的一个数据集,我想打印出他们的名字。

如果那时我试着用,但没有真正有用。

这是我学习python的第二天,即使这听起来很愚蠢,也应该很好。

答案

我写了一个sql查询,我还在想办法简化这个,

SELECT name 
from student 
where 
student.interest1 in ((select interest1 from teacher) UNION (select interest2 from teacher))
or student.interest2 in ((select interest1 from teacher) UNION (select interest2 from teacher));

这应该工作,这个查询通过检查学生的interest1或interest2是否匹配教师的任何一个兴趣来工作。只需在游标内部运行它就应该返回一组名称。

以上是关于如何在Python中比较两个SQLite数据集并搜索相似之处?的主要内容,如果未能解决你的问题,请参考以下文章

比较两个数据集并获取更改了哪些字段

Gradle:如何指定库的两个源集并在项目中添加依赖项

在 spark java 中取两个数据集并集的必要条件是啥

SQLite-如何比较两列

合并两个具有列表的数据集并在合并后使用 pandas 保留列表

plist,sqlite3,xml?