零基础想自学sql数据库应该从哪入手

幸福的女神 4个月前 已收到5个回答 举报

梨花仍犹在 4星

共回答了480个问题采纳率:97.4% 评论

1、在关系型数据库年代,SQL可以学得非常深,当然也非常难学。学好了可以成为非常高薪的人才。

2、现在倾向于No-SQL,去SQL化,我也不建议重度使用SQL的各个比较深的功能。我觉得学会基本的建库建表建字段,基本的增删改查就行了,连视图都可以不用学。存储过程可以学学,但也不是必须的。Join就千万不要再用了。举个例子,两个表都是不小的表,用join时动辄几秒的计算量,会导致系统非常慢,我在这里就吃过亏。其实可以单表操作,等结果出来后,再循环每条记录查出对应join的记录即可。其实想想,我们页面上每次多是显示10-20条记录,这样循环查询的次数非常少,相对于join动辄百万次的计算来说,几十次就可以忽略不计。所以现在只要遇到sql执行的时间太久,我就把相应的地方改成没有join的简单语句(代码量比较大,一次改过来比较费劲,只能遇到再改)。

3、关于访问的SQL的代码,一旦没有join,没有复杂的东西,就会变得非常简单。这时候我就会做一个基类,把相关的增删改查工作直接做好,这样其它类就基本不用写什么代码,全部继承自基类即可。

经过上面的处理,你就会发现SQL其实很简单(当然不是真的简单,而是复杂的东西不符合现在的趋势)。而且这样处理后,我们的应用就可以微服务化,相互之间的关联减少,耦合降低。所以建议不要花太多时间在学SQL上,我们只需要用最基本的功能即可。

22小时前

49

良人拥梦 2星

共回答了298个问题 评论

鉴于你是sql数据库小白,我有以下几个建议:

1、了解什么是数据库,表,列,数据类型,行和主键,什么是SQL,最好动手实践下,做做总结之类的,

2、了解什么是MYSQL,学会搭建MYsql环境,用MYSQL相关工具,并使用MYSQL(最好先学会一门编程语言,如python),

3、学会检索数据,排序数据,过滤数据,汇总数据,分组数据,插入数据,更新和删除数据,创建和操纵表,

4、学会使用视图,存储过程,游标,触发器,

5、学会对数据库的事务处理的管理,安全管理,数据库的维护和性能改善,数据库的全球化和本地化。

大概就是这些了,谢谢!推荐一本书,MYSQL必知必会。

21小时前

20

跟伱沒関系 4星

共回答了466个问题 评论

个人认为自学SQL数据库应该从以下几个方面入手,快速、简洁、实用。

1、选择一个合适的SQL数据库系统,个人推荐Mysql数据库。

2、了解并掌握简单的操作方法,基本的操作步骤,如:创建数据库,数据表,删除表等方面的一些基础知识。

3、充分利用一些数据库管理工具,通过图型化操作管理界面,进一步掌握和熟练SQL数据库的增删改查等功能的深入操作,关键字的建立,如何检索等方面的具体应用。

4、结合一门语言,推荐PHP,找一些简单的如:留言本,网络查询之类的源代码,开源代码,在本地电脑搭建一个运行环境,深入学习SQL数据库命令格式与用法,从而学会更多的sql数据库更多的操作方式和应用。

5、通过长期的学习和积累,从一款SQL数据库入门后,可以尝试“上下延伸”,学习桌面、网络数据库方面的操作和编程,继而了解和学习大型网络数据库的知识,网络集群操作,分散存储等。

6、通过以上的方法,您很快就会入门SQL数据库,其实自学SQL数据库并不难。

18小时前

25

无奈的女 2星

共回答了246个问题 评论

1.什么是sql

结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

2. 数据视图与数据模型

数据抽象共有三个层次:物理层、逻辑层和视图层。在逻辑层使用的数据模型包括两类:一类是概念数据模型,主要用于数据库设计,它能被一般的用户理解,与人的思维表达方式比较接近。这样的模型有实体-联系模型(ERM);另一类是逻辑数据模型,按计算机系统的观点对数据建模,使得数据更适合用计算机加以表示。

3.数据库语言

根据功能不同,可以将数据库系统提供的语言分成三种类型:1)数据定义语言(DDL),用于定义数据库模式;2)数据操纵语言(DML),用于对数据库进行查询和更新;3)数据控制语言(DCL),用于对数据进行权限管理。

4.数据库模式

根据数据的不同抽象层次,数据库有三级模式:物理模式(内模式)在物理层描述数据库中全体存储结构和存取方法,而逻辑模式(概念模式)则在逻辑层描述数据库中全体数据的逻辑结构和特征。在视图层也可分为若干模式,称为子模式(外模式),它描述了数据库用户能够看见和使用的局部数据的逻辑结构和特征。通常一个数据库只有一个物理模式和一个逻辑模式,但是子模式有若干个。

5. E-R图

E-R图由以下元素构成:1)矩形,代表实体型;2)椭圆,代表属性;3)菱形,代表联系;4)线段,将属性和实体性相连,或将实体型和联系相连。

6.关系模型

关系模型由关系数据结构、关系操作集合和关系完整性约束三部分构成。在关系模型中,现实世界实体以及实体间的联系均用关系来表示。关系模型允许定义三类完整性约束:实体完整性、参照完整性和用户定义完整性。其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件。实体完整性规则是:关系的主码不能取空值。参照完整性规则是:外码必须是另一个表中主码的有效值,或者是“空值”。

7.连接运算

连接运算是从两个关系的乘运算结果中选取属性间满足一定条件的元组,构成新的关系。连接运算有两种:等值连接和自然连接。自然连接要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。

8.SQL基本语法

数据库创建、表的创建、对表的增删查改等。

9.视图

视图能够简化用户的操作

视图是用户能以多种角度看待同一数据

视图对重构数据库提供了一定程度的逻辑独立性

视图能够对机密数据提供安全保护

10.事务

事务是一系列的数据库操作,是数据库应用程序的基本单元,是反映现实世界需要以完整单位提交的一项工作。事务是用户定义的一个数据库操作序列。

事务的四个特征:原子性、一致性、隔离性和持久性。

11. 触发器

一个触发器用来定义一个条件以及在该条件为真时需要执行的动作。通常,触发器的条件以断言的形式定义。动作以过程的形式定义。

12.索引

帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。

基本的sql学习基础如上

进阶学习

(1)sql执行顺序。当sql逻辑复杂后,sql的执行顺序就会非常重要。

sql执行顺序 - qanholas

(2)SQL ROW_NUMBER() OVER函数。用作分组排序,比如各个省份税收排名前20的企业。

SQL ROW_NUMBER() OVER函数的基本用法用法

(3)case when then else end。用作条件判断,比如将10、11、12、13……19、20岁的人群新生成一个字段‘年龄段’取值为10-20岁;聚合函数分别计算,如sum(case when 性别=‘男’ then 收入 end) as 收入_男,sum(case when 性别=‘n女’ then 收入 end) as 收入_女

SQL中的case when then else end用法

(4)select时加标签。例如select出某一特征user_id时新建一个tag字段作为用户的标签。

select user_id,'白领' as tag

(5)差集运算。例如取A集合中不包含在B集合的用户,做差集。

14小时前

47

歌且行 2星

共回答了277个问题 评论

Sql是结构化查询语言的缩写,这门语言与数据库是息息相关的,所以你要先了解一些基本的数据库知识,并且在你电脑上安装个数据库的实验环境,比如微软的access或开源的mysql都是不错的选择。在做好这两个事情之后,可以开始学习、实践sql了,sql作为一门语言,那就要了解语言的要素,搞清楚里面关键字和语法结构,最基础的是把增(Insert)、删(Delete )、查(Select )、改(Update)几个用熟悉,接着再去搞链接(Join)等高阶内容。相信你一定可以的,有问题可以私信问我,加油!!

9小时前

21
可能相似的问题
Copyright © 2024 微短问答 All rights reserved. 粤ICP备2021119249号 站务邮箱 service@wdace.com