多表sql联接中的Where子句
桌子多表sql联接中的Where子句,sql,Sql,桌子 上面编写的sql join语句中的where子句似乎无效,因为TypeID的某些值返回不完整的数据,而其他值则根本不返回行。我该如何着手修复此问题?y重复一个条件 SELECT LocalBussiness.BusinessName, Address.Address, Address.Postcode, Area.AreaName, Area.Region, LocalBusiness.OfficialRating, LocalBusiness.min_pr
上面编写的sql join语句中的where子句似乎无效,因为TypeID的某些值返回不完整的数据,而其他值则根本不返回行。我该如何着手修复此问题?y重复一个条件
SELECT
LocalBussiness.BusinessName, Address.Address, Address.Postcode,
Area.AreaName, Area.Region, LocalBusiness.OfficialRating,
LocalBusiness.min_price, LocalBusiness_max_price,
Phone.description, Phone.PhoneNo,
Email.Description, Email.email_address,
LocalBusiness.Web_address
FROM
LocalBusiness
JOIN
Address ON LocalBusiness.BusinessID = Address.BusinessID
JOIN
Area ON Address.AreaID = Area.AreaID
AND LocalBusiness.BusinessID = Address.BusinessID
JOIN
Phone ON Phone.BusinessID = LocalBusiness.BusinessID
JOIN
Email ON Email.BusinessID = LocalBusiness.BusinessID
WHERE
TypeID = '1'
ORDER BY
LocalBusiness.BusinessName ASC;
尽量避免这种重复
AND LocalBusiness.BusinessID=Address.BusinessID in JOIN Area
否则,请检查数据的一致性。y重复一个条件
SELECT
LocalBussiness.BusinessName, Address.Address, Address.Postcode,
Area.AreaName, Area.Region, LocalBusiness.OfficialRating,
LocalBusiness.min_price, LocalBusiness_max_price,
Phone.description, Phone.PhoneNo,
Email.Description, Email.email_address,
LocalBusiness.Web_address
FROM
LocalBusiness
JOIN
Address ON LocalBusiness.BusinessID = Address.BusinessID
JOIN
Area ON Address.AreaID = Area.AreaID
AND LocalBusiness.BusinessID = Address.BusinessID
JOIN
Phone ON Phone.BusinessID = LocalBusiness.BusinessID
JOIN
Email ON Email.BusinessID = LocalBusiness.BusinessID
WHERE
TypeID = '1'
ORDER BY
LocalBusiness.BusinessName ASC;
尽量避免这种重复
AND LocalBusiness.BusinessID=Address.BusinessID in JOIN Area
否则,请检查数据的一致性。请添加示例数据和预期输出。我猜并非所有企业都有地址、电话和电子邮件?如果是这样的话,您可能希望进行外部联接。这是用于哪个RDBMS的?请添加一个标记,以指定您使用的是
mysql
、postgresql
、sql server
、oracle
还是db2
——或者完全是其他什么。请添加示例数据和预期输出。我猜不是所有的企业都有地址、电话和电子邮件?如果是这样的话,您可能希望进行外部联接。这是用于哪个RDBMS的?请添加一个标记,以指定您使用的是mysql
、postgresql
、sqlserver
、oracle
还是db2
——或者其他完全不同的东西。