MySQL从不同的表中检索数据并将该数据计入不同的列

时间:2018-10-08 02:55:09

标签: mysql

嗨,我正在尝试从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);

这是我的语法,但是不起作用,有人能帮忙吗?预先感谢。

0 个答案:

没有答案