mySQL内部联接表(如果需要)

mySQL内部联接表(如果需要),mysql,inner-join,Mysql,Inner Join,嘿,我有以下疑问: SELECT UA.Fname, UA.LName, UA.Title, UA.AccDate, UA.Address1, UA.Address2, UA.City, UA.State, UA.Zip, UA.Email, UA.Phone, LabCaseNum, SpecCaseNum, deadlineDate, CaseDetail, AU.Fname as AuthName, AU.Lname, AU.Phone, AU.Email, AU.Rol

嘿,我有以下疑问:

SELECT UA.Fname, UA.LName, UA.Title, UA.AccDate, UA.Address1, 
  UA.Address2, UA.City, UA.State, UA.Zip, UA.Email, UA.Phone, 
  LabCaseNum, SpecCaseNum, deadlineDate, CaseDetail, 
  AU.Fname as AuthName, AU.Lname, AU.Phone, AU.Email, AU.Role 
FROM userAccount UA 
INNER JOIN userCase UC ON UA.AccNum = UC.Userlink 
INNER JOIN authPerson AU ON UC.CaseNum = AU.UserCase 
WHERE UC.CaseNum = 7903579800;
如果AU表中有数据,则其工作正常。但是,如果AU表中没有记录,则不会返回任何记录,即使UC和UA表中始终有数据要保存

如果没有要收集的数据,如何设置上述查询的格式以忽略AU表?

您是否尝试在该表上使用:

SELECT UA.Fname, UA.LName, UA.Title, UA.AccDate, UA.Address1, 
  UA.Address2, UA.City, UA.State, UA.Zip, UA.Email, UA.Phone, 
  LabCaseNum, SpecCaseNum, deadlineDate, CaseDetail, 
  AU.Fname as AuthName, AU.Lname, AU.Phone, AU.Email, AU.Role 
FROM userAccount UA 
INNER JOIN userCase UC ON UA.AccNum = UC.Userlink 
LEFT JOIN authPerson AU ON UC.CaseNum = AU.UserCase 
WHERE UC.CaseNum = 7903579800;

这将返回其他表
UA
UC
中的所有行,并且如果该表中没有匹配的
UserCase
,它将返回
AU
行的
null

在AU上尝试左外连接。这将返回第一个表中的所有行,无论AU是否有数据。如果没有AU数据,则为AU字段返回空值

SELECT UA.Fname, UA.LName, UA.Title, UA.AccDate, UA.Address1, 
  UA.Address2, UA.City, UA.State, UA.Zip, UA.Email, UA.Phone, 
  LabCaseNum, SpecCaseNum, deadlineDate, CaseDetail, 
  AU.Fname as AuthName, AU.Lname, AU.Phone, AU.Email, AU.Role 
FROM userAccount UA 
INNER JOIN userCase UC ON UA.AccNum = UC.Userlink 
LEFT OUTER JOIN authPerson AU ON UC.CaseNum = AU.UserCase 
WHERE UC.CaseNum = 7903579800;

谢谢迈克对我的答案做出贡献。@StealthRT…没问题:)