Mysql基础

SQL概述

启动停止数据库

客户端连接

在系统中找到这个打开后输入密码即可

第二种办法就是配置环境变量

输入这串指令密码即可

数据库的数据模型,客户端操作,服务端会启动DBMS也就是数据管理系统操作多个数据库,单个数据库又能操作多张表,表上的就是数据

关系型数据库

可以有关系的表格就是关系型数据库

SQL

sql的通用语法

分类

DDL

显示数据库

创建数据库

使用数据库

查看数据库

删除数据库

创建表

查询表结构

查询指定表

DML

插入可以指定字段插入也可以逗号隔开多条插入

更改就这样写记住就行

删除某个符合条件和删除整个表

DQL

基础查询,指定字段,全部,查询性别,去重

查询id小于等于11的信息

查询年龄不为22的信息两个都可以

查询为空和非空的信息

查询某个数值范围的对应信息三种写法

查询某个性别是女id小于15的信息

查询id是两个及以上的信息写法

查询是三位数就是三个下划线

查询e结尾的名字

统计某个值的个数,null不被统计

求和女生id

计算平均值,最大值,最小值

统计分组就是男女分别数量

统计平均id分组

查询id小于15的并且以性别分组展示,过滤条件是数量大于等于2的

按照id升序或者降序,升序可以不加asc;

以年龄升序,年龄相同id降序

分页查询,第一页前三行的数据

函数

字符串函数

分别是拼接,转小字母,转大字母,左拼接,右拼接

去除两边空格,返回1到五索引对应元素

数值函数

向上取整,向下取整,取模,随机数,保留两位

日期函数

多表查询

多表关系

多表查询

内连接

查询每一个员工的姓名,和关联部门名称(隐式内连接实现)

显示内连接,inner可省略,写法和隐式内连接区别不大

外连接

左外连接,显示emp整个内容和dept的name,要用左外连接,outer可有可无

右外连接,和左外连接区分就好

自连接

查询员工对应的领导

查询出所有员工即使没有领导也显示出来要用左外连接

联合查询,年龄小于50且薪资低于5000的查出来,两个单表中间加个union all足矣,去掉all是去重

子查询

标量子查询,查询销售部员工信息,把销售部查询的id作为返回值条件查询

查询方东白之后入职的员工信息

列子查询,查询销售部和市场部的员工信息

复制代码
select * from emp where salary> all(select salary from emp where dept_id=(select id from dept where name='财务部'));

查询所有比财务部工资高的员工信息,all换成some就是比任意财务部员工工资高

行子查询,查询薪资和领导相同于张无忌的员工信息

查询与鹿杖客,宋远桥薪资和职位相同的员工信息

复制代码
select e.*,d.* from (select * from emp where entrydate> '2006-01-01') e left join dept d on e.dept_id=d.id;

查询入职日期是20060101的员工信息以及入职信息

相关推荐
xxxibolva16 小时前
SQL 学习
数据库·sql·学习
孪生质数-16 小时前
MySQL主从延迟根因诊断法
数据库·mysql
bLEd RING16 小时前
Redis 设置密码无效问题解决
数据库·redis·缓存
WiChP17 小时前
【V0.1B5】从零开始的2D游戏引擎开发之路
java·服务器·数据库
751158918 小时前
笔记:postgresql如何下载驱动并安装?
数据库·postgresql
荒川之神18 小时前
拉链表概念与基本设计
java·开发语言·数据库
Highcharts.js18 小时前
适合报表系统的可视化图表|Highcharts支持直接导出PNG和PDF
javascript·数据库·react.js·pdf
刘~浪地球18 小时前
Redis 从入门到精通(一):简介、安装与配置
数据库·redis·缓存
APIshop18 小时前
Java获取京东商品详情接口(item_get)实战指南
java·linux·数据库
Bat U18 小时前
MySQL数据库|联合查询
数据库·mysql