Python pymysql中的多个内部连接

Python pymysql中的多个内部连接,python,sql,inner-join,pymysql,Python,Sql,Inner Join,Pymysql,我试图从pymysql中的三个表中选择多个列,并对它们进行内部连接。我不明白在添加第二个内部联接时出现了什么问题。我觉得这是一个简单的语法错误,但我就是看不出来 这很有效 q1='''SELECT a.SUBJECT_ID, a.HADM_ID, a.ADMITTIME, p.GENDER, p.DOB, c.ITEMID, FROM ADMISSIONS as a INNER JOIN PATIENTS as p ON a.SUBJECT_ID=p.SUBJECT_IDd;' res1=cur

我试图从pymysql中的三个表中选择多个列,并对它们进行内部连接。我不明白在添加第二个内部联接时出现了什么问题。我觉得这是一个简单的语法错误,但我就是看不出来

这很有效

q1='''SELECT a.SUBJECT_ID, a.HADM_ID, a.ADMITTIME, p.GENDER, p.DOB, c.ITEMID,
FROM ADMISSIONS as a INNER JOIN PATIENTS as p ON a.SUBJECT_ID=p.SUBJECT_IDd;'
res1=curs.execute(q1)
curs.fetchall()
这不起作用,我看不出错误

q1='''SELECT a.SUBJECT_ID, a.HADM_ID, a.ADMITTIME, p.GENDER, p.DOB, c.ITEMID,
FROM ADMISSIONS as a INNER JOIN PATIENTS as p ON a.SUBJECT_ID=p.SUBJECT_ID
FROM CHARTEVENTS as c INNER JOIN ON ADMISSIONS as a c.SUBJECT_ID=a.SUBJECT_ID;'''
res1=curs.execute(q1)
curs.fetchall()
由此产生的错误

编程错误:(1064,“您的SQL语法有错误;请查看与您的MariaDB服务器版本相对应的手册,以了解使用“从入院处作为内部连接患者作为a.SUBJECT_ID=p.SUBJECT_ID\n第2行上的p”的正确语法)


MySQL错误消息非常准确。他们直接指向(第一)个问题

删除逗号

c.ITEMID, FROM ADMISSIONS
        ^-------------------------------here
但是在连接之后,您尝试从另一个表中进行选择。那不行。你必须加入他们

FROM ADMISSIONS as a 
INNER JOIN PATIENTS as p ON a.SUBJECT_ID=p.SUBJECT_ID
FROM CHARTEVENTS as c <------------------------------------------NO!
INNER JOIN ON ADMISSIONS as a c.SUBJECT_ID=a.SUBJECT_ID
来自入学考试
在a.SUBJECT\u ID=p.SUBJECT\u ID上以p的形式将患者内部连接起来

从CHARTEVENTS作为c,您不能将表别名
a
设置两次。在
FROM
之前有一个尾随逗号。一个逗号来自太多。