gpt4 book ai didi

sql - MySQL多表查询问题

转载 作者:行者123 更新时间:2023-11-29 09:23:17 25 4
gpt4 key购买 nike

我在查询 MySQL 中的多个表时遇到问题,目前束手无策。

我在每个表中都有唯一的ID,并使用INNER JOIN来组合它们;我对 SQL 很陌生,这可能是错误的方法,因此我在这里发帖:

查询:

SELECT res.UserID, res.QuizID, res.QuizResult, u.UserID, u.UserLogin, q.QuizID, q.QuizName, q.QuizFile
FROM results res
INNER JOIN users u ON (res.UserID = u.UserID)
INNER JOIN quiz q ON (res.QuizID = q.QuizID)

users包含

UserID
UserLogin
UserPass

测验包含

QuizID
QuizName
QuizFile

结果包含

UserID
QuizID
QuizResults

任何人都可以告诉我为什么我会得到笛卡尔积,以及我应该如何解决它?

最佳答案

试试这个:

SELECT res.UserID, res.QuizID, res.QuizResult, u.UserID, u.UserLogin, q.QuizID, q.QuizName, q.QuizFile FROM results as res INNER JOIN users as u ON res.UserID = u.UserID INNER JOIN quiz as q ON res.QuizID = q.QuizID

实现 INNER JOIN 之类的另一种方法是:+

SELECT res.UserID, res.QuizID, res.QuizResult, u.UserID, u.UserLogin, q.QuizID, q.QuizName, q.QuizFile FROM results as res,users as u ,quiz as q WHERE res.UserID = u.UserID AND res.QuizID = q.QuizID

关于sql - MySQL多表查询问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/729429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com