日积月累,终有云开见月时
一、基本的SELECT语句
SQL的分类(简写)
{
DDL:数据定义语言。 CREATE \(创建) ALTER \(修改) DROP \(删除结构) RENAME \ (重命 名) TRUNCATE \ (清空表)
DML:数据操作语言。 INSERT \ (添加) DELETE \(删除记录) UPDATE \ (修改) SELETE \ (查询) “增删改查”
DCL:数据控制语言。 COMMIT \ (提交修改) ROLLBACK \ (返回之前操作) SAVEPOINT \ GRANT \ REVOKE(权限的问题)
}
1、基本的select语句 :select 字段1,字段2,... from 表名
从当下数据库建立的表中,查询(展现)字段1,字段2... 的内容
例:在emp数据库下已经建立了一个emp1表,查询其中的 “id” 列


代码展示及结果呈现 :
# 展示特定的列+
SELECT id
FROM emp1;
# 展示所有的字段
# "*":表中所有字段(或列)
SELECT * FROM emp1;


2、字段(列)的别名
别名类似于外号,仅作用于当下的语句命令中,不修改原表中的数据信息
格式:字段名后空一格
# 列的别名: name 姓名 :“姓名” 这个就叫做别名
SELECT id,name 姓名
FROM emp1;


3、去除重复项
表现效果类似于WPS的筛选唯一项功能
例:当你想要查找一群人都来自哪几个院系时
# 没有进行去重
SELECT 学院
FROM emp1;
# 去重之后的
SELECT DISTINCT 学院
FROM emp1;


注意(在两个字段的情况下进行演示):
(1)进行筛选的字段在前,且后面接一个未进行筛选的字段,且两者的数量不一致,将导致报错
(2)只有同时两个条件同时重复时,才会进行筛选,否则不发挥作用
例:
#
SELECT DISTINCT 学院,salary
FROM emp1;

4、 空值问题
空值,也就是我们常说的Null
在我们向表里添加数据时,不可避免的会出现一些未知的数据需要先空出来,这是它们一般被赋值为 ’null‘ ,那么NULL 会不会参与运算呢,我们可以验证一下:
# 奖金一栏有NULL,将 奖金*12 命名为年工资
SELECT salary,奖金,奖金 * 12 "年工资"
FROM emp1;
通过运行语句,我们可以看到,当奖金被赋值为NULL后,它依然可以参与运算,但是任何数*NULL都等于NULL ,所以Null 不等于0
总结:Null 可以参与运算,任何数与之相乘除或相加减,其值依然为Null,NUll不等于0,不等于""
拓展:如果考虑美观性,我们通常会希望让Null 等于 0,对此,我们可以通过IFNULL(expr1,expr2)来实现,expr1:含有NULL的列;expr2:想要变成的数值
# 将空值转化为0,并参与运算
SELECT salary,奖金,IFNULL(奖金,0)* 12 "年工资"
FROM emp1;
5、 着重号( ` )
着重号不是单引号,当你定义的SQL库或者表等与SQL语句中的关键词出现重复时,将会导致无法具体确认,从而出现错误,而着重号可以令其在运行时得到区分,从而避免报错
例:首先建立一个 ORDER 表
# 1、无着重号
SELECT * FROM ORDER;
#2、有着重号
SELECT * FROM `ORDER`;


6、查询常数
查询常数更像是在指定位置插入一列指定的数据,但是不修改原表
例:emp1表中包含 id、name、salary、学院、奖金 五个字段(列),但这些人的学历都是本科,我想要在展示将本科学历加入到第一列,但不想对原表产生影响,那么就可以运行下面的命令
SELECT '本科',id,name,salary,学院,奖金
FROM emp1;
7、显示表结构
可以用 DESCRIBE 或 DESC 来显示表中字段的详细信息
DESCRIBE emp1; # 显示表中字段的详细信息
DESC student; # 也可以写为DESC
8、过滤数据
我们在查找数据时,如果要从海量数据里面一条条的进行查找验证其是否符合规则,那就太过复杂了,我们可以通过 WHERE 语句来实现这一目的,WHERE 与C语言中的 if 条件语句很相似
# 查询计科院所有人员信息
SELECT * FROM emp1
# 过滤条件 声明在WHERE后面
WHERE 学院 = '计科院' AND id > 4;


需要注意的是,如果有多个条件时,中间要用 AND 来进行连接。
今天是学习MySQL的第一天,将学到的知识整理成笔记,在这上面呈现出来,希望能对大家产生帮助,同时也欢迎大家来一同交流和纠正我的错误。
计算机的就业形势已然不如当年,或许我们能做的就是不断地学习新的知识,不断地磨练自己的技术,在荆棘中开辟出独属于自己的道路;与其望洋兴叹,不如破釜沉舟。
须知少日拏云志,曾许人间第一流。我们还年轻,我们还有无限可能!