Heim > Fragen und Antworten > Hauptteil
cursor.execute( "SELECT * FROM `xplt_cases` LEFT JOIN `dgn_cases` ON dgn_cases.rid = xplt_cases.rid WHERE `status`=%(checker)s", { 'checker': status })
Ich bin neu bei MySQL und versuche, zwei Tabellen miteinander zu verbinden, um Ergebnisse zu erhalten, erhalte jedoch die Fehlermeldung: Spalte status
in der Where-Klausel ist mehrdeutig.
„status“ ist mein Funktionsparameter.
P粉0662240862024-02-26 16:25:42
嗯,看来您的两个表都有一个 status
列。尝试用表名(别名)作为前缀:
SELECT * FROM `xplt_cases` x LEFT JOIN `dgn_cases` ON dgn_cases.rid = xplt_cases.rid WHERE x.`status`=%(checker)s
P粉8506803292024-02-26 13:56:33
错误 Column 'status' in where 子句是不明确的
意味着您在查询中加入的 2 个表都有一个名为 status
的列,这就是为什么 Mysql
告诉您 column 状态是不明确的
您可以通过指示表中要在查询中使用哪个 status
列来解决此问题。示例;
xplt_cases.`status`=%(checker)s"
或
dgn_cases.`status`=%(checker)s"