根据国家/地区代码选择国家名称

时间:2016-11-07 12:48:18

标签: mysql sql

我有一个名为users的表格,其中包含一列codecountry,另一个名为country的表格中包含code列和country列。

我想根据表country中的country从表codecountry中选择users

我认为下面的代码可以工作,但它总是返回一个空集,我无法弄清楚我做错了什么。

代码:

SELECT country 
FROM country 
WHERE (code) IN (
    SELECT codecountry 
    FROM users 
    WHERE  iduser="me"
)

2 个答案:

答案 0 :(得分:2)

我认为问题出在"me",字符串应该用单引号括起来,同时,尝试使用反引号作为保留字(通常会引发错误):

SELECT country
FROM country
WHERE`code IN (SELECT codecountry
               FROM `users`
               WHERE  iduser='me')

无论是那个,还是@GordonLinoff在评论中说,也许在users表上没有记录符合这个条件。

答案 1 :(得分:0)

SELECT c.country
  FROM country c
  JOIN users u
    ON u.codecountry = c.code
 WHERE u.iduser = "me";