sql 关联语句通过城市ID,查出所在省
数据结构:表1(info)id,name,cityid1,张三,12,李四,13......表2(city)cityid,cityname,type(0-直辖,1-省,2...
数据结构:
表1(info)
id,name,cityid
1,张三,1
2,李四,13
......
表2(city)
cityid,cityname,type(0-直辖,1-省,2-市,3-区县,4-地区),parentid
1,北京,0,0
2,吉林,1,0
13,长春,2,2我想一条关联语句查询info表后,得到:
1,张三,北京
2,李四,吉林
请问该如何写这条语句?能否实现? 展开
表1(info)
id,name,cityid
1,张三,1
2,李四,13
......
表2(city)
cityid,cityname,type(0-直辖,1-省,2-市,3-区县,4-地区),parentid
1,北京,0,0
2,吉林,1,0
13,长春,2,2我想一条关联语句查询info表后,得到:
1,张三,北京
2,李四,吉林
请问该如何写这条语句?能否实现? 展开
4个回答
2013-10-29
展开全部
通过外键来查询,首先要确认Info表中cityid(外键)与City表中cityid(可设置为主键,若不为主键需唯一约束)设置关系为外键约束,设置OK之后。再写查询语句(后面我加了个条件):select a.name,b.cityname from info a left join city b on a.cityid = b.cityid where a.name ='张三'这样查询出的结果为:张三,北京 外键约束组合查询在一般开发时很常用
2013-10-29
展开全部
可以用union分开来查询:select a.id,a.name,b.cityname from info a,city b where a.cityid=b.cityid and type in(0,1)
union
select b.id,b.name,a.cityname from city a,(select a.id,b.cityid,b.parentid,a.name from info a,city b where a.cityid=b.cityid and type in (3,4)) b
where b.parentid=a.cityid
union
select b.id,b.name,a.cityname from city a,(select a.id,b.cityid,b.parentid,a.name from info a,city b where a.cityid=b.cityid and type in (3,4)) b
where b.parentid=a.cityid
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-29
展开全部
李四cityid:13,应该是长春的。~~~select a.name,b.cityname from info a,city b where a.cityid=b.cityid
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-29
展开全部
select 表1.name, 表2.cityname from 表1,表2 where 表1.cityid = 表2.cityid
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询