还不会恋爱吗?看看我和MySQL的高质量恋爱……

文章目录

与MySQL相识的第一天 与她在一起的的利益(好处) 看看她的五官(数据库的常见概念) 认识她的第一印象(数据库存储数据的特点) 认识她的闺蜜(常见的数据库管理系统) 与MySQL相知的又一天 她的家里情况(MySQl的背景) 她的性格脾气(MySQl的优缺点) 把她叫出来(MySQL安装) 把她揽入怀里(MySQL服务的启动和停止) 和她一起出门与回家(MySQL的登录和退出) 为她疯狂购物的一天(MySQL的一些基本操作) 观察她的想法(基本语法) 想法的小总结(特点) 教学示范(实例) 比较产品品牌的不一样(isnull PK <=>)

与MySQL相识的第一天

Love is hard to get into, but harder to get out of. 我和MySql大概就是如此叭。俗话说,没有永远的朋友,只有足够的利益,才能让我们与人友善。

与她在一起的的利益(好处)

可以持久化数据到本地 结构化查询数据,比较方便掌控

看看她的五官(数据库的常见概念)

DB:数据库,存储数据的容器 BDMS:数据库管理系统,又称为数据软件或数据库产品,用于创建或管理DB SQL:结构化查询语言,用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有的主流数据库软件通用的语言

认识她的第一印象(数据库存储数据的特点)

数据存放到表中,让后表再放在库中 一个库中可以由多张表,每张表具有唯一的表名用来标识自己 表中有一个或者多个列,列又称为”字段“,相当于Java中的属性 表中的每一行数据,相当于Java中的”对象“

认识她的闺蜜(常见的数据库管理系统)

闺蜜的名字(数据库名) 住哪里(是谁旗下的) 备注
她(MySQl) 由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品 她最受欢迎,要好好待她,别一不小心就跑了
Oracle 她也是Oracle旗下的,MySql是呗她家收购的灰公主 她也是万众瞩目的一个,由于其骄奢的性格让它没有最多的欢迎,但再高端市场,她比MySql更受欢迎一点
db2 IBM公司研制的一种关系型数据库系统 DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下
SQL Server sqlserver 是Microsoft、Sybase 和Ashton-Tate三家公司共同开发的。但后面由于另外两家公司分家,就称为由微软公司推出的了 具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。

与MySQL相知的又一天

The more I know her, the more I like her. 在认识一个人后,我们会有一种想要深入去了解她的冲动,那就去更加深入的了解她叭。

imgimg

她的家里情况(MySQl的背景)

MySQL数据库隶属于MySQL AB分公司,总部位于瑞典,后被Oracle收购

imgimg


她的性格脾气(MySQl的优缺点)

豪气(开源、免费、成本低) 温柔(性能好、移植性好) 体积小,便于安装

imgimg

把她叫出来(MySQL安装)

属于C/S架构的软件,一般来讲安装服务端,(安装路径不能包括中文) 分类 社区版 企业版 她的多种形态(版本又多种)

把她揽入怀里(MySQL服务的启动和停止)

方式一:浪漫的开始(以CMD形式,通过命令行) net start 服务名 抱着(启动) net stop 服务名 松开(停止) 方式二:霸道总裁(强势点点点) 计算机——右击——管理——服务——找到MySQL启动

和她一起出门与回家(MySQL的登录和退出)

出门方式的选择(登录): mysql -h主机名 -p端口号 -u 用户名 -p密码 mysql -u 用户名 -p密码(这是前提为主机,且端口号为3306) 最后你可以偷偷进去,不用密码,背着偷偷输密码

为她疯狂购物的一天(MySQL的一些基本操作)

I’m a miser, but in my love life, i would be willing to spend every penny i have. 既然决定和她一起,就要去为她做一些事了,学一些基本的东西叭,以备不时之需呀!

观察她的想法(基本语法)

select 查询列表

from 表名

where 判断条件

想法的小总结(特点)

查询列表可以是字段、常量、表达式、函数、也可以是多个

查询结果是一个虚拟表

基本的操作小表达

	一、按条件表达式筛选
	条件运算符:> < = (!=不等于为)<> >= <=
	二、按逻辑表达式筛选
	逻辑运算符:
		&& || !
		and or not 	
	三、模糊查询
		like =
		between and 
		in 
		is null	
	四、安全等于
		<=>
		可以判断null值
	五、注释
		注释
		单行注释:#注释文字
		单行注释:-- 注释文字
		多行注释:/* 注释文字  */
	六、语法规范
		不区分大小写
		使用“;”结尾
		各子句一般分行写
		关键字不能缩写也不能分行
		合理使用缩进
	七、查询
		select 常量值;
		注意:字符型和日期型必须用单引号引起来,数值不需要
	八、起别名
		as 或者空格
	九、一些关键字
		去重:select distinct 字段名 from 表名
		不允许select distinct a,b from 表名
		
		+号:做加法运算,不能连接字符
			select 数值+数值  直接计算
			select 字符+数值 先将字符尝试转化为数值,不能转即为0在计算
			null+任何值  返回null
			
		concat函数:
			功能:拼接字符
			select concat(a,b,……);
		ifnull函数
			功能:判断某字段或者表达式是否为null,若是返回指定值,否则返回原本值
			select ifnull(commission_pct,0) from employees;
		isnull函数:
			功能:判断某字段或者表达式是否为null,若是返回1,否则返回0

教学示范(实例)

查询员工号为176的员工的姓名和部门号和年薪
SELECT 
	CONCAT(last_name,first_name) AS 姓名,`manager_id` AS 部门号,salary*12 AS 年薪
FROM
	employees
WHERE 
	employee_id LIKE 176;
选择工资在5000到12000之间的员工的姓名和工资
 SELECT 
 	CONCAT(last_name,first_name) AS 姓名,salary AS 工资
 FROM 
 	employees
 WHERE
 	salary>5000 AND salary <12000;
选择在20或50号部门工作的员工姓名和部门号
  SELECT 
  	`employee_id` AS 员工号,CONCAT(last_name,first_name) AS 姓名,`manager_id` AS 部门号
  FROM
  	employees
  WHERE 
  	employee_id BETWEEN 20 AND 50;
选择姓名中有字母a和e的员工姓名
  SELECT 
  	CONCAT(last_name,first_name) AS 姓名
  FROM 
  	employees
  WHERE
  	CONCAT(last_name,first_name) LIKE '%a%' OR  CONCAT(last_name,first_name) LIKE '%e%' ;
显示出表employees部门编号在80-100之间的姓名、职位
 SELECT 
 	department_id AS 部门编号,CONCAT(last_name,first_name) AS 姓名,`job_id` AS 职位
 FROM 
 	employees
 WHERE
 	`department_id` BETWEEN 80 AND 100;

比较产品品牌的不一样(isnull PK <=>)

普通类型数值 null值 可读性
isnull false true true
<=>(安全等) true true false

有了上面的表格,她都把这两个牌子优缺点给你,你就得为她选择了呀,去吧骚年。

imgimg

来源url
栏目