首页 > 数据库 >MYSQL--SQL语言

MYSQL--SQL语言

时间:2024-09-23 13:01:19浏览次数:1  
标签:SQL -- MYSQL emp 表名 table where select

SQL--操作关系型数据库语言

在cmd中输入net stop/start mysql80来 启用/关闭 MySQL.
在cmd中输入mysql -h 127.0.0.1 -P 3306 -u root -p来连接到MySQL客户端,
或者直接打开MySQL的客户端终端.
关系型数据库使用表结构储存数据,使用统一的sql语言.

SQL的通用语法

1. sql语句可以多行或单行书写,以分号结尾.
2. MySQL数据库中的SQL语言不区分大小写.
3. 注释, --内容,#内容或者/*内容*/

分类 全称 说明
DDL Data Definition Language 数据定义语言,定义数据库对象
DML Data Manipulation Language 数据操作语言,对数据库进行增删改
DQL Data Query Language 数据查询语言,查询表中数据
DCL Data Control Language 数据控制语言,创建用户,控制访问权限

DDL

数据库操作

  1. 查询:show databases;
  2. 查询当前数据库:select database();
  3. 创建:create database [if no exists] 数据库名;
  4. 删除:drop database 数据库名;
  5. 使用:use 数据库名;

表操作

  1. 查询当前库所有表:show tables;
  2. 查询表结构:desc 表名;
  3. 查看表的建表语句:show create table 表名;
  4. 创建表 --> 例:
mysql> create table tb_user(
    -> id int comment '编号',
    -> name varchar(50) comment '姓名',
    -> age int comment '年龄',
    -> gender varchar(1) comment '性别'
    -> ) comment '用户表';

ps: varchar为字符串类型,括号中数字为字符串长度,会根据写入的字符串长度调整该数据的存储空间.

数值类型

类型 大小(byte)
tinyint 1
smallint 2
mediumint 3
int 4
bigint 8
float 4
double 8

表操作

  1. 添加字段
    alter table 表名 add 字段名类型 [comment 注释][约束];
  2. 修改某一字段的数据类型
    alter table 表名 change 旧字段名 新字段名 类型 [comment 注释][约束];
  3. 删除字段
    alter table 表名 drop 字段名;
  4. 修改表名
    alter table 表名 rename to 新表名;
  5. 删除表
    drop table [if exist] 表名;
  6. 删除指定表,并重新创建(只有表结构,而无数据)
    truncate table 表名;
    mysql图形化界面:sqlyog datagrip

DML

  1. 添加数据
    insert into 表名 (字段1,字段2....) values (值1,值2....);
  2. 给全部字段添加数据
    insert into 表名 values (值1,值2....);
    例:
    insert into employee (id,workno,name,gender) values (1,'1','idcast','男');
    使用select * from employee;查看表.
  3. 修改数据
    update 表名 set 字段1=值1,字段2=值2.... [where 条件];
  • 例:update employee set name= 'itheima' where id = 1;
    若不带where条件语句,会更新整张表的内容
  1. 删除数据
    delete from 表名 where 条件;

DQL

  1. 查询多个字段
    select 字段1 字段2 .... from 表名;或者select * from 表名;
  2. 设置别名
    select 字段1[as 别名1],字段2[as 别名2]....from 表名;
  3. 去除重复记录
    select distinct 字段列表 from 表名;
  4. 条件查询
    select 字段列表 from 表名 where 条件列表;
条件 >,<,<>,<=,>=,=,!=,between...and...,is null,in(...),like
逻辑符 and或&&,or或||,not或!

例:

  • select * from emp where age >= 15 and age <= 20;
  • select * from emp where age between 15 and 20;
    ps:将15 和 20 调换后不可用,between后跟最小值,and后跟最大值.
  • select * from emp where age in(18,20,25);
  • 查询姓名为俩个字的员工信息
    select * from emp where name like '__';
  • 查询身份证最后一位是X的员工信息
    select * from emp where idcard like '%X';

聚合函数
作用于某列数据
count --> 统计数量
max,min --> 最大最小值
avg --> 平均值
sum --> 求和
用法:select 聚和函数(字段列表) from 表名
例:

  • select count(id) from emp; null不参与聚合函数的计算.
  • select avg(age) from emp;
  • 统计西安地区员工年龄之和
    select sum(age) from emp where workaddress = '西安';

分组查询
select 字段列表 from 表名 [where 条件] group by 分组名字段 [having 分组后过滤条件];
例:按性别分组

  • select gender,count(*) from group by gender;
7
9
  • select gender,avg(age) from group by gender;
31.4268
46.8889

标签:SQL,--,MYSQL,emp,表名,table,where,select
From: https://www.cnblogs.com/oneko/p/18425307

相关文章

  • 结对项目——实现一个自动生成小学四则运算题目的命令行程序
    这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/这个作业要求在哪里结对项目-作业-计科22级34班-班级博客-博客园(cnblogs.com)这个作业的目标结对项目——实现一个自动生成小学四则运算题目的命令行程序成员1陈奕奕32220045......
  • 医院急诊系统设计与实现spring boot+vue+mysql+html
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、其他案例七、源码获取​​​​​​​作者介绍:✌️大厂全栈码农|毕设实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。✌️作者博客:曾几何时​​​​​​​......
  • 基于Spring Boot的企业OA管理系统设计与实现
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、其他案例七、源码获取​​​​​​​作者介绍:✌️大厂全栈码农|毕设实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。✌️作者博客:曾几何时​​​​​​​......
  • 基于Spring Boot的校园服务平台的设计与实现
    目录一、前言二、技术介绍三、系统实现四、论文参考五、核心代码六、其他案例七、源码获取​​​​​​​作者介绍:✌️大厂全栈码农|毕设实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。✌️作者博客:曾几何时​​​​​​​......
  • 开源MySQL 数据库闪回工具:MyFlash数据恢复工具的安装及使用示例
    MyFlash是一个由美团点评开源的MySQL数据库闪回工具,它专门用于回滚MySQL中的DML操作,如INSERT、UPDATE和DELETE。这个工具通过解析MySQL的binlog文件来实现数据的恢复。使用MyFlash前,需要确保MySQL的binlog格式设置为ROW,并且binlog_row_image设置为FULL。以......
  • MySQL binlog解析工具binlog2sql使用示例
    binlog2sql是一个用于解析MySQL的二进制日志(Binlog)的工具,它可以将Binlog事件转换为SQL语句,这对于审计、数据同步等场景非常有用。binlog2sql通常用于实现MySQL数据的实时同步到其他数据库或系统中。安装binlog2sql首先,你需要安装binlog2sql。如果你使用的是Python环......
  • Keepalived核心组件及配置文件解读
    Keepalived是一个用于高可用性(HA,HighAvailability)集群的软件,主要用于Linux环境下。它的主要目的是提高服务器系统的可靠性和可用性,通过在一组服务器之间提供负载均衡和故障转移的功能来实现。简单来说,Keepalived可以帮助你的服务在一台服务器宕机后自动切换到另一台服务器上......
  • myflash MySQL数据恢复工具的使用示例:误删除数据恢复和误修改数据恢复两种场景
    以下是myflash数据恢复工具的使用示例,分为误删除数据恢复和误修改数据恢复两种情况:误删除数据恢复:构建测试环境:创建测试数据库和表。假设你已经安装并启动了MySQL服务,登录到MySQL客户端,执行以下语句创建一个名为testdb的数据库和一个名为user的表:sqlCREATEDATABASEtest......
  • MySQL binlog --skip-gtids --include-gtids --exclude-gtids 参数作用及使用示例
    在MySQL中,--skip-gtids选项用于完全跳过全局事务标识符(GTID)的处理,而--include-gtids和--exclude-gtids则是用于选择性地应用或跳过特定的GTID范围内的事务。这些选项通常在MySQL的二进制日志(binlog)消费者工具(如mysqlbinlog)中使用,而不是直接应用于MySQL服务器本身......
  • IPD流程体系:IPD在硬件产品开发中的应用
    目录1、内容简介2、开发各阶段介绍3、PVT阶段4、资源群更新作者简介1、内容简介在硬件类相关产品的开发过程中,每个阶段的工作都是需要按照一定的流程、规范和标准去进行的。整体还是相对瀑布化的流程,每个阶段的输入、输出、准入、准出标准也都很明确。也就是说,硬件类产品相对更容易......