数据库设计 国家表 国家编号:char(3) 国名:vARCHAR(50) 省市表 省市编号:char(3) 省市名:varchar(50)

数据库设计 国家表 国家编号:char(3) 国名:vARCHAR(50) 省市表 省市编号:char(3) 省市名:varchar(50),第1张

(1)要求查找”中国河北省“的所有县名。该如何查找,写出SQL语句

SELECT

县郡表.县郡名

FROM

国家表 JOIN 省市表 ON ( 国家表.国家编号 = 省市表.国家编号 )

JOIN 县郡表 ON ( 县郡表.省市编号 = 省市表.省市编号 )

WHERE

国家表.国名 = '中国' AND 省市表.省市名 = '河北'

(2)在功能不变的前提下,将上述三表合并成一个表,该如何设计?在你的设计中,实现上述查找的SQL语句该如何写

CREATE TABLE 国省县 (

国名:vARCHAR(50),

省市名:varchar(50),

县郡名:VarChar(50)

)

SELECT

县郡名

FROM

国省县

WHERE

国名 = '中国' AND 省市名 = '河北'

字段里面是可以使用反斜杠的。

第一步创建表

create table table1(

国家/地区   nvarchar(200),

市/县/州     nvarchar(200)

)

第二步打开表插入值:

第三步:直接使用sql语句插入值

你要使用我上述说的这种 insert into table1 vaules(XXXX)方式绝对可以插入进去

                                 希望对你有所帮助!

原则上不需要年度表

科目表好像有问题,你这样科目重复比较多,科目表需要代码和名称就够了

你可以在成绩表里面加上年度、班级、学号、科目、成绩

班级、科目都保存编码,到时候联查对应名称就行,查询就很简单了

要是你觉得不会半路变更科目名称和班级名称,成绩表里面保存名称也行,联查就省了,语句最简单。

越是复杂系统,表之间关联越少,不然很复杂的SQL语句就会更复杂庞大了,记住这一点,三范式在有的时候不是很适用


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6712779.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-27
下一篇2023-03-27

发表评论

登录后才能评论

评论列表(0条)

    保存