无名交流

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 293630|回复: 6

大家来学数据库(非学院派,实战派修炼法)

[复制链接]

0

主题

0

听众

2

积分

等待验证会员

发表于 2019-8-6 04:33:59 |显示全部楼层
  之前提过,很长时间以来,非IT专业学生基本都不学数据库,甚至连选修的机会都没有。倒是没有技术含量的办公自动化大行其道,导致当今绝大多数白领都只会玩Excel之类的傻瓜机,这是白领工作效率低下的重要原因,也是后来者有望弯道超车的好机会。  不过即使真的开数据库课程,也未必是好事。数据库如果按照大家熟悉的学院派教法,估计很多人会从兴致盎然到兴味索然甚至苦不堪言。我们不妨另辟蹊径,来一场实战派修炼。也许大家会惊讶地发现,原以为数据库很难,没想到可以这么简单!  怎么开发数据库管理系统,那是大佬的事。微软的SQL SERVER是现在主流的数据库,我们说的学数据库,只是学习在上面开发自己的应用,难度并不高。如果把SQL SERVER比作巨人,那SQL语言就是阿拉丁的神灯,只要学会SQL语言,就可以指挥巨人呼风唤雨移山填海。SQL语言是所有跟计算机打交道的语言中最接近自然语言的,对于英语基础不错的大学生来说,简直就是大白话(哑巴英语也可以派上大用场了)。因此,我们的实战派修炼,不谈理论,也不谈概念,直接从SQL语言切入。
回复

使用道具 举报

0

主题

0

听众

4

积分

等待验证会员

发表于 2019-8-6 04:33:59 |显示全部楼层
  考虑到大家多半没有安装SQL SERVER,我们就举最简单的例子,从最容易的SQL语句开始,配上结果图,让大家慢慢找感觉。等有了兴趣,再做深入学习的打算。现在这里已经创建好了一张表A1,只有一个字段Z1(数值型),里面只有简单的几个数字。到底里面有些什么?在Excel里,打开一个文件,点开某个工作表,就可以看到内容,对数据库来说,提取表的内容,要这样下指令:  Select Z1 from A1  意思是从A1表中取Z1字段。有些人可能一说写语句就发怵,以为很难很高深,但你看看这个语句,是不是就跟大白话差不多?  
回复

使用道具 举报

0

主题

0

听众

2

积分

等待验证会员

发表于 2019-8-6 04:33:59 |显示全部楼层
  第2张表A2也只有1个字段Z2,数据更少。  
回复

使用道具 举报

0

主题

0

听众

4

积分

等待验证会员

发表于 2019-8-6 04:33:59 |显示全部楼层
  有了这2张最简单的表,我们就可以开讲数据库中最重要的操作——连接。很多人一开始就把连接想歪了,以为连接就是以一张表中的特征值到另一张表中取相关的属性值,比如用产品的代码到产品表中取它的名称及大小重量等属性。一一对应找东西确实是连接的一种用法,却不是连接的本意。连接的本意是交叉配对,就是说一张表的每一条记录都跟另一张表的每一条记录进行配对,这里A1表8条记录,A2表5条记录,交叉连接的结果是8*5=40条,这没什么。如果两张表各有上千,结果就超过百万条,那就很可怕了。因此交叉连接实际几乎不会用到,但理解了它才真正领悟到数据库的精髓。交叉连接的标准写法是:  select Z1,Z2 from A1 cross join A2,  相信大家会更喜欢更简洁的偷懒写法:  select Z1,Z2 from A1,A2(中间用逗号代替)  结果40条有点太多,只截取头尾2张图,中间大家脑补:    
回复

使用道具 举报

0

主题

0

听众

2

积分

等待验证会员

发表于 2019-8-6 04:33:59 |显示全部楼层
  *代表所有表的所有字段。  如果前面有表名加点,则表明是该表的所有字段。  因此,select * from A1,A2 跟上面的 select Z1,Z2 from A1,A2 是等价的,就不配图了。  同理,select A1.* from A1,A2 相当于 select Z1 from A1 重复5遍
回复

使用道具 举报

0

主题

0

听众

2

积分

等待验证会员

发表于 2019-8-6 04:33:59 |显示全部楼层
  select * from A1 join A2 on A1.Z1=A2.Z2  这就是大家最熟悉,最常用的连接方式——内连接,也是默认的连接方式。。  与Excel里Vlookup不同的是,如果找不到A2表的对应记录,A1表的记录也会消失,这是初学者应该特别注意的。  很多初学者往往比照Vlookup来想象连接,默认的内连接恰好与之不同。连接方式用错必定导致报表结果出错。这是入门时期的常见问题,切记切记!  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册


QQ|Archiver|手机版|无名交流网 ( 鄂ICP备18000449号-6 )

GMT+8, 2020-7-12 23:22 , Processed in 0.030649 second(s), 11 queries , Xcache On.

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
汽车门网     神马电影网 施肥机,便捷,式笑笑博客一笑倾城爱玩电影萌怪网专注精品源码分享微言读书E881同城网web小工匠美女show