① 请教:查询a表数据,显示省市区镇的名字,不显示id,并且分页,请问sql语句怎么写
创建表及数据
create table t
(id int,
code int,
name varchar(20),
parentcode int)
insert into t values (1,10000,'浙江',0)
insert into t values (2,20000,'安徽',0)
insert into t values (3,11000,'杭州',10000)
insert into t values (4,12000,'宁波',10000)
insert into t values (5,21000,'合肥',20000)
insert into t values (6,22000,'宣城',20000)
insert into t values (7,11100,'萧山',11000)
insert into t values (8,11300,'滨江',11000)
insert into t values (9,11300,'富阳',11000)
执行
select t3.name1,t3.name2,t4.name from
(select t1.code code1,t1.name name1,t1.parentcode parentcode1,t2.code code2,t2.name name2,t2.parentcode parentcode2
from t t1 left join t t2 on t1.code=t2.parentcode where t1.parentcode=0) t3 left join t t4 on t3.code2=t4.parentcode
结果
以上sqlserver写法,其他数据库基本也差不多
② sql使用一张表进行省市县联动查询
建议使用省、市、县3张表,当然也有使用1张表来解决的,这个依据个人习惯。
但使用3张表应该是存储字节最少,IO消耗最低的方式
③ 要用sql创建一个全国省及地市的数据库,要求做到添加省.地市不破坏数据库表的结构.怎么设计数据库的
一张表足够,建立一张省市表,必须有以下字段:id、parentId,id存当前省市标示,parentId存当前市的父级省或市,如果已经是顶级,填写中国标示,意为顶级,查询的时候start with connect by递归查询,添加修改没啥说得,删除的时候必须级联删除。
④ 省市级联SQL语句
用ACCESS的思路,SQLSERVER估计差别不多
用下面的SQL生成一个表,应该就是你要的表,用INSERT INTO 导入你的目标表
SELECT 省.省名, 市.市名, 区.区名
FROM 省 LEFT JOIN (市 LEFT JOIN 区 ON 市.ID = 区.市ID) ON 省.ID = 市.省ID;
⑤ 数据库设计 国家表 国家编号:char(3) 国名:vARCHAR(50) 省市表 省市编号:char(3) 省市名:varchar(50)
(1)要求查找”中国河北省“的所有县名。该如何查找,写出SQL语句
SELECT
县郡表.县郡名
FROM
国家表 JOIN 省市表 ON ( 国家表.国家编号 = 省市表.国家编号 )
JOIN 县郡表 ON ( 县郡表.省市编号 = 省市表.省市编号 )
WHERE
国家表.国名 = '中国' AND 省市表.省市名 = '河北'
(2)在功能不变的前提下,将上述三表合并成一个表,该如何设计?在你的设计中,实现上述查找的SQL语句该如何写
CREATE TABLE 国省县 (
国名:vARCHAR(50),
省市名:varchar(50),
县郡名:VarChar(50)
)
SELECT
县郡名
FROM
国省县
WHERE
国名 = '中国' AND 省市名 = '河北'
⑥ 求按省市各区域统计数量的ASP环境下的SQL词句
不知道你要怎么统计的?
如:统计有多少个“辽宁”、多少个“吉林”、……,是不是这样:
各省市自治区名称在A列(A1起),在B1输入
=IF(COUNTIF(A$1:A1,A1)=1,COUNTIF(A:A,A1),"")回车并向下填充。
或:
先用函数提取具体行政区划名称,如B1输入
=INDEX(A:A,SMALL(IF(MATCH(A$1:A$1000&"",A$1:A$1000&"",)=ROW($1:$1000),ROW($1:$1000),4^8),ROW(1:1)))&""数组公式,输入后先不要回车,按Ctrl+Shift+Enter结束计算,再向下填充;
C1输入
=COUNTIF(A:A,B1)回车并向下填充。
这样统计数据可集中在一起。
还是统计多少个“省”、多少个“直辖市”、多少个“自治区”、……
这就要有关键字词,如辽宁省、吉林省、……(有“省”字);上海市、北京市、……(有“市”字)。才方便设置。如:
=COUNTIF(A:A,"*省")
当然,另建辅助表也行,再用VLOOKUP或INDEX返回。
就看你的需要再给你设置吧。
⑦ 怎么把中国的省市区数据导入sqlserver数据库
很简单用数据工具打开表,倒入数据,或者编写段小程序倒入数据。