首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在SQL中连接两个表值

如何在SQL中连接两个表值
EN

Stack Overflow用户
提问于 2013-05-20 05:18:02
回答 3查看 176关注 0票数 0

我有两张桌子,即州和区。这些表中的公共列是StateID。

我想在那个州的地区名称下面显示州名。

结果格式如下:

Tamilnadu

金奈

库姆巴托

Karnataka

班加罗尔

迈索尔。

请告诉我如何使用sql查询连接这些表以获得上述结果。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-05-20 05:49:29

这应该是可行的:

代码语言:javascript
复制
SELECT sc.name 
FROM
       states AS s2 
LEFT JOIN
       (SELECT s.statename AS name, 
               s.stateid 
          FROM   states s 
       UNION ALL 
       SELECT c.cityname AS name, 
              c.stateid 
          FROM   city c) AS sc 
ON sc.stateid = s2.stateid 

输出:

Tamilnadu 金奈 库姆巴托 Karnataka 班加罗尔 迈索尔

票数 1
EN

Stack Overflow用户

发布于 2013-05-20 05:24:49

请尝试:

代码语言:javascript
复制
select StateID, StateName, 0 Sort from States
union all
select StateID, DistrictName, 1 Sort From Districts
order by StateID, Sort
票数 2
EN

Stack Overflow用户

发布于 2013-05-20 05:25:35

代码语言:javascript
复制
SELECT StateName, group_concat(DistrictName)
  FROM Districts d JOIN States s
    ON d.StateID = s.StateID
group by StateName
ORDER BY StateName, DistrictName

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16643037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档