永发信息网

sql BOM查询

答案:4  悬赏:20  手机版
解决时间 2021-04-24 21:32

--> 测试数据:[tb]
if object_id('[tb]') is not null drop table [tb]
create table [tb]([id] int,[col1] varchar(8),[col2] int)
insert [tb]
select 1,'河北省',0 union all
select 2,'邢台市',1 union all
select 3,'石家庄市',1 union all
select 4,'张家口市',1 union all
select 5,'南宫',2 union all
select 6,'坝上',4 union all
select 7,'任县',2 union all
select 8,'清河',2 union all
select 9,'河南省',0 union all
select 10,'新乡市',9 union all
select 11,'aaa',10 union all
select 12,'bbb',10

想要的结果:比如输入河北省 我可以查询出来它下面的所以市接点

id col1 col2
----------- -------- -----------
1 河北省 0
2 邢台市 1
3 石家庄市 1
4 张家口市 1
6 坝上 4
5 南宫 2
7 任县 2
8 清河 2

最佳答案

--2005 用CTE很简单的


;with t as(
select * from [tb] where col1='河北省'
union all
select a.* from [tb] a ,t where a.col2=t.id


)
select * from t

全部回答

你的表结构太烂了。

不过还可以查

select * from tb

where id > =(select id from tb where col1= '河北省' ) and

id < (select top 1 id from tb where id >(select id from tb where col1= '河北省' ) and col1 like '%省' order by id)

select * from 城市表 innner join [tb] on 城市表名.col2= [tb].[col2] where [tb].[col1]='河北省'

select * from [td] where [col1] = '河北省'

这样可以找到河北这条数据

不知道我理解对你的问题没?

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
如果有一天你的女(男)朋友打电话和你说“我
新买的话筒没声音怎么办?
为什么种植不了
如何能让一个人变得坚强起来?
n97 v22版的想玩n_gage的破解游戏,怎么办?
朱熹由水感悟出的诗句是哪一句?
DNF怎样才能打冰霜克拉卡?
男人分手时会流眼泪吗?
诺基亚E71在哪可以下好的主题和游戏
电脑怎样玩我的庄园
失眠了,睡不着怎么办,头还特疼
地狱死神改的设计图用的是B还是BR的重武装
结婚的时候穿什么好看啊
玻璃和塑料都属于合成材料吗?
帖子删除问题
推荐资讯
二极管有电压选择吗?
电脑开机画面问题
怎么分开查白天和晚上的流量(手机流量)?有
他带听我的的拼音是什么
要怎样才能变得会哄别人开心和变得话多一点
唐诗三百首的好词好句,唐诗三百首 宋词三百首
观刈麦白居易名句,观刈麦常考句子
形容生命尊贵的诗句,描写珍贵的诗句
笔记本变压器冒油,特别热怎么回事
钱才是最重要的句子,一个人老是说钱财来身外
QQ堂那里有双截棍和火炬卖?
我想卖个多普达的收 价格在2000左右的,要好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?