说到SQL基本命令,脑海中最先闪现的便是增、删、改、查的基本功能。初学SQL,由易到难,下面来说说本人初学时的过程和一些感受。
先了解一下入门的一些简单知识。数据操作语言有SELECT(查询表中数据)、INSERT(向表中插入新数据),UPDATE(变更表中的数据)、DELETE(删除表中的数据)。数据类型有INTEGER(整数型数据)、CHAR(字符型,定长字符串,后接(r)制定最大长度为r,超出最大长度部分无法输入。)、VARCHAR(字符型数据,可变字符)、DATE(日期型数据,存储日期)。聚合函数有COUNT(计算行数)、SUM(合计值)、AVG(平均数)、MAX(最大值)、MIN(最小值)。
下面就我自己初次操作的过程进行展示:
用CREATE DATABASE students_info 操作语句创建一个名为students_info 的数据库。
用USER students_info 操作语句调用数据库students_info.
创建两个列表:
CREATE TABLE basic_info (num VARCHAR(30) ,name VARCHAR(30),class INT);
INSERT INTO basic_info (num,name,class) VALUES (‘0001’,’mark’,1);
....................................................................................................................................;
CREATE TABLE grade_info (num VARCHAR(30) ,SUBJECT VARCHAR(30), score INT);
INSERT INTO grade_info (num, SUBJECT ,score) VALUES (‘0001’,’shuxue’,95);
....................................................................................................................................;
至此两个与学生相关的信息列表已经建成。
借用学习笔记,下面查询、修改、删除语句算是比较好理解,一目了然,操作基本没什么问题。
![27608d6c35776c9a5537c2a46eb54b0a.png](https://i-blog.csdnimg.cn/blog_migrate/94cf35af05d326b10a5182f5494b90c8.jpeg)
在我自己练习操作的过程中,自我感觉较难理解,逻辑困难的应属与嵌套查询部分,我的坎坷操作之路如下:
例如查询数学得分最高的学生的班级题目中,由于逻辑混乱,导致屡次修改尝试最终查询结果都无法显示。修改倒数第二版语句编辑如下:
![ab17a7f067765c3879804c9c05f79e61.png](https://i-blog.csdnimg.cn/blog_migrate/842e2b2bcfdf79c6ec243301d1df9c2b.jpeg)
输出结果如下:
![889a6f15ba1775107e2b6eabd365f1d0.png](https://i-blog.csdnimg.cn/blog_migrate/f5ff8e914486d1f3f404db4d37649b65.jpeg)
最后一次尝试在子查询里面加入AND连接新条件,语句编辑如下:
![7e8a368dcd2f24ff1c534410966c785d.png](https://i-blog.csdnimg.cn/blog_migrate/ff0eb47fb99b6a5cd4d094dd4aaedd88.jpeg)
由于SQLyog语句编辑窗口不如pycharm 做的更让人喜欢,它不会在编译时提示输入错误,也不会在执行失败时提示哪里出错,而且语句执行后修改列表语句比较复杂,因此数据库在建表、插入数据信息、以及在后面的进行查询、删除命令时必须谨小慎微,否则很可能由于自己的手误或者语句逻辑错误造成重头再来的苦果。