连接两个表并使用外键SQL查询选择一行

时间:2016-04-16 06:13:35

标签: sql

我有两张表CitiesCountry。我正在使用查询

SELECT * 
FROM citiesTable 
WHERE cityName LIKE 'F%' 
LIMIT 30

每个cityName各自的国家/地区都加入了country表中的外键。

我想选择每个城市和他们各自的国家,如Fayzabad,阿富汗。我应该使用哪个查询?因为我是SQL的新手,所以请提及

3 个答案:

答案 0 :(得分:2)

最好使用左连接来获取所有城市表数据

select city.*, ctry.countryName 
from citytable city 
left join country ctry on city.countryid = ctry.countryid

答案 1 :(得分:1)

使用联接查询

SELECT * 
FROM citiesTable, country 
WHERE country.country_id = citiesTable.country_id 
  AND cityName LIKE 'F%' LIMIT 30 

答案 2 :(得分:1)

尝试此查询:

SELECT * 
FROM CitiesTable a, Country b 
WHERE a.country_id = b.id 
  AND a.cityName LIKE 'F%' 
LIMIT 30