![对此错误有任何帮助吗?我应该更改哪个表名?[1]
SELECT
C1.answer1 AS answer1,
C2.answer2 AS answer2,
C3.answer3 AS answer3,
C4.answer4 AS answer4,
C5.answer5 AS answer5,
C6.answer6 AS answer6,
C7.answer7 AS answer7,
C8.answer8 AS answer8,
C9.answer9 AS answer9,
C10.answer10 AS answer10
FROM tblprelimanswer A
LEFT JOIN tblprelimstudentans a1
ON A.answer1 = a1.answer1
LEFT JOIN tbl
ON A.answer2 = a1.answer2
LEFT JOIN tbl
ON A.answer3 = a1.answer3
LEFT JOIN tbl
ON A.answer4 = a1.answer4
LEFT JOIN tbl
ON A.answer5 = a1.answer5
LEFT JOIN tbl
ON A.answer6 = a1.answer6
LEFT JOIN tbl
ON A.answer7 = a1.answer7
LEFT JOIN tbl
ON A.answer8 = a1.answer8
LEFT JOIN tbl
ON A.answer9 = a1.answer9
LEFT JOIN tbl
ON A.answer10 = a1.answer10
我的表更改别名是否正确?哪些需要纠正?用我的错误纠正我。帮我摆脱这个。谢谢!
您将多次加入tbl
而不会为其设置别名。如果要多次联接到同一个表,则每次都需要为其指定唯一的别名。
可能是您真的只是想要ON
中的其他标准,而不是额外的LEFT JOIN
,在这种情况下,您可以使用AND
:
LEFT JOIN tblprelimstudentans a1
ON A.answer1 = a1.answer1
AND A.answer2 = a1.answer2
AND A.answer3 = a1.answer3
AND A.answer4 = a1.answer4
AND A.answer5 = a1.answer5
AND A.answer6 = a1.answer6
AND A.answer7 = a1.answer7
AND A.answer8 = a1.answer8
AND A.answer9 = a1.answer9
AND A.answer10 = a1.answer10
我不确定你在这里的意图是什么,但看起来你可能在一个糟糕的设计中工作。 如果您发布示例数据/架构和所需的结果,人们将能够找到问题的根源,而不仅仅是语法问题。
大概,您希望 from
子句定义C
别名。 我猜会是这样的:
FROM tblprelimanswer A
LEFT JOIN tblprelimstudentans a1
ON A.answer1 = a1.answer1
LEFT JOIN tbl c1
ON c1.answer2 = a1.answer2
LEFT JOIN tbl c2
ON c2.answer3 = a1.answer3
LEFT JOIN tbl c3
. . .