大纲:我有两个表格-一个是作者和书籍的字典,另一个是不同作者的书籍之间的比较
Book_id(PK) Author Book_id_1(CPK) Book_id_2(CPK) Book_similarity
===================== ==================================================
1 Amy 1 3 High
2 Amy 1 4 Low
3 Ben 2 3 High
4 Ben 2 4 High
3 1 High
3 2 High
4 1 Low
4 2 High
问题:我正在尝试进行一个查询,它返回下表,计算找到的“高”和“低”相似性的数量-这可以将这些书追溯到编写它们的作者
Author_1(CPK) Author_2(CPK) Num_high Num_low
====================================================
Amy Ben 3 1
Ben Amy 3 1
我意识到在最后一个表中有重叠,但这是唯一的方法,我可以使它有一列是可搜索的。我怀疑我必须使用两个查询来生成结果和某个连接,但我对MySQL还是相当陌生
NB:使用python和MySQLdb,如果这有用的话。否则,我将把查询插入python cur.execute()中
问题不太清楚,但我猜你在找这样的东西:
基本上,您只需在相似性表中的book\u id上连接book表(这样您就可以访问book\u id\u 1和book\u id\u 2中书籍的作者),然后在Num\u low和Num\u high的相似性较低时,每次都计算1(当然,当相似性较高时)
相关问题 更多 >
编程相关推荐