嗨,我正在尝试从mysql中的不同表中检索一些数据,但由于某些原因它会出错。我想检索前往布里斯班和悉尼的旅行者总数。
旅行者(昵称,名字,出生日期)==表1 在表1中,昵称是主键。
TravelersBrisbane(旅行ID,日期时间,travelLocation)==表2 表2中的travelID是主键。
Travelers_TravelersBrisbane(昵称,travelID)==表3 在表3中,昵称和travelID是外键,
TravelersSydney(昵称,travelID,datatime,travelLocation)== 4 在表4中,昵称,travelID,datetime是外键。
现在,我想检索所有在一个城市中旅行过一次或多次的旅行者的昵称,以及在两个单独的列中旅行过的两个城市的次数,这些列应该为totalTimesTraveledBris, TotalTimesTravelSyd。
我使用了以下语法,但无法正常工作,并且出现错误。
SELECT DISTINCT travelers.nickname,
count (Travelers_TravelersBrisbane.nickname) as totalTimesTraveledBris,
count (TravelersSydney.nickname) as TotalTimesTravelSyd
FROM TravelersSydney, travelers
inner join Travelers_TravelersBrisbane on TravelersSydney.nickname =
Travelers_TravelersBrisbane.nickname
WHERE travelers.nickname IN (
SELECT nickname from TravelersSydney)
AND travelers.nickname IN (
SELECT nickname from Travelers_TravelersBrisbane);
这是我的语法,但是不起作用,有人能帮忙吗?预先感谢。