首页 > 数据库 >MySQL的基础操作

MySQL的基础操作

时间:2024-04-09 21:32:10浏览次数:26  
标签:comment name 数据库 基础 math student MySQL 操作 SELECT

目录

一.数据库的操作

1.显示当前的数据库

2.创建数据库

3.删除数据库

4.选择数据库

补充:

二.表的基础操作

1.常用数据类型:

2.查看表结构

3.创建表

4.删除表

三.表的增删改查

1.新增(Create)

2.查询(Retrieve)

3.修改(Update)

4.删除(Delete)


一.数据库的操作

1.显示当前的数据库

SHOW DATABASES;

2.创建数据库

CREATE DATABASE database_name;

3.删除数据库

DROP DATABASE database_name;

4.选择数据库

USE database_name;

补充:

1.创建数据库的时候可以加上[IF NOT EXISTS]关键字,表示此数据库没创建时才创建

CREATE DATABASE IF NOT EXISTS database_name;

2.创建数据库的时候可以用[SET]指定编码格式,没有指定用默认字符集:utf8

CREATE DATABASE IF NOT EXISTS database_name SET utf8mb4;

二.表的基础操作

先了解表的常用数据类型

1.常用数据类型:

  • 整数类型

    • INT/INTEGER: 标准大小的整数,通常使用INT,占用4字节。
    • TINYINT: 很小的整数,占用1字节。
    • SMALLINT: 小整数,占用2字节。
    • BIGINT: 大整数,占用8字节。
  • 浮点数类型

    • FLOAT: 单精度浮点数,占用4字节。
    • DOUBLE: 双精度浮点数,占用8字节。
  • 定点数类型

    • DECIMAL/NUMERIC: 用于存储精确的小数,需要指定精度和范围。
  • 字符串类型

    • CHAR: 定长字符串,最多255个字符。
    • VARCHAR: 变长字符串,最多65535个字符。
    • TEXT: 长文本字符串,最多65535个字符。
    • BLOB: 二进制数据,用于存储大型数据。
  • 日期和时间类型

    • DATE: 日期,格式为'YYYY-MM-DD'。
    • TIME: 时间,格式为'HH:MM:SS'。
    • DATETIME: 日期和时间,格式为'YYYY-MM-DD HH:MM:SS'。
    • TIMESTAMP: 时间戳,存储从1970年1月1日以来的秒数。
  • 枚举和集合类型

    • ENUM: 用于存储枚举值,可从指定的值列表中选择一个。
    • SET: 用于存储多个枚举值,可从指定的值列表中选择多个。
  • 空间数据类型

    • GEOMETRY: 用于存储几何图形对象的数据类型。

2.查看表结构

DESC table_name;

3.创建表

CREATE TABLE table_name(
   field1 datatype,
   field2 datatype,
   field3 datatype,
   ......
);
//field1    意思是字段,表示你为该字段取的名
//datatype  表示该字段的数据类型

注:可以使用[comment]增加字段说明,示例如下:

create table student(
   id int,
   name varchar(20) comment '姓名',
   password varchar(30) comment '密码',
   age int,
   sex varchar(1),
   birthday timestamp,
   resume text
);
   

4.删除表

DROP TABLE table_name;

注:同样可以使用[if exists],示例如下:

drop table if exists student;

三.表的增删改查

1.新增(Create)

首先创造一张新表:

DROP TABLE IF EXISTS student;
CREATE TABLE student (
   id INT,
   sn INT comment '学号',
   name VARCHAR(20) comment '姓名',
   qq_mail VARCHAR(20) comment 'QQ邮箱'
);

1)单行数据 + 全列插入

INSERT INTO student VALUES(100,200,'小明',null);

2)多行数据 + 指定列插入

INSERT INTO student (id,sn,name) VALUES
    (100,200,'小明'),
    (101,201,'小张');

2.查询(Retrieve)

首先创造一张新表

DROP TABLE IF EXISTS student;
CREATE TABLE student (
   id INT,
   sn INT comment '学号',
   name VARCHAR(20) comment '姓名',
   math DECIMAL(3,1),
   english DECIMAL(3,1),
   chinese DECIMAL(3,1),
);

1)全列查询

SELECT * FROM student;

2)指定列查询

SELECT id, name, math FROM student;

3)别名

SELECT name, math+chinese+english as 总分 from student;

//as可以省略

4)去重:DISTINCT

SELECT DISTINCT math FROM student;

//对math这列数据进行去重处理

5)排序:ORDER BY

SELECT * FROM student order by math;

-- ASC 为升序(从小到大)
-- DESC 为降序(从大到小)
-- 默认为 ASC

6)条件查询:WHERE

  1. 基本的条件查询
    SELECT * FROM table_name WHERE condition;
    
    //在这个查询中,table_name 是你要查询的表名,condition 是你指定的条件。查询将返回满足条件的所有列。
    
  2. 条件运算符
    • =:等于
    • != 或 <>:不等于
    • <:小于
    • >:大于
    • <=:小于等于
    • >=:大于等于
    • BETWEEN:在指定范围内
    • IN:在指定值列表内
    • LIKE:模糊匹配
  3. 逻辑运算符
    • AND:逻辑与
    • OR:逻辑或
    • NOT:逻辑非
  4. 模糊查询
    • %:匹配零个或多个字符
    • _:匹配单个字符
  5. 限制结果集:LIMIT
// 从 0 开始,筛选 n 条结果
SELECT * FROM student  LIMIT n;

//从 s 开始,筛选 n 条结果
SELECT * FROM student  LIMIT s,n;

//从 s 开始,筛选 n 条结果,比第二种用法更明确,建议使用
SELECT * FROM student  LIMIT n OFFSET s;

3.修改(Update)

UPDATE student SET math=math*2;

UPDATE student SET english=88 where name='小明';

4.删除(Delete)

// 删除小明的数据
DELETE FROM student WHERE name='小明';

// 删除整表数据
DELETE FROM student;

标签:comment,name,数据库,基础,math,student,MySQL,操作,SELECT
From: https://blog.csdn.net/a1806542392/article/details/137468153

相关文章

  • 协程操作
    协程操作一、asyncio模块asyncio模块是Python中实现异步的一个模块,该模块在Python3.4的时候发布async和await关键字在Python3.5中引入。因此,想要使用asyncio模块,建议Python解释器的版本不要低于Python3.5。二、事件循环所谓的事件循环,我们可以把它当作是一......
  • 文档操作&异常捕获&列表、字典推导式
    【零】文档操作【1】读和写(覆盖写和追加写)#r(read):只读模式#将数据一次性全部读出#w(write):只写模式#如果文件存在则打开文件,并将文件内荣清空然后写入新的内容#如果文件不存在则新建文件,并写入新的内容#a(append):追加写模式#如果文件存在则打开文件,而......
  • 操作系统的引入
    操作系统的引入进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。所以想要真正了解进程......
  • 【前沿模型解析】潜在扩散模型 2-3 | 手撕感知图像压缩 基础块 自注意力块
    1注意力机制回顾同ResNet一样,注意力机制应该也是神经网络最重要的一部分了。想象一下你在观看一场电影,但你的朋友在给你发短信。虽然你正在专心观看电影,但当你听到手机响起时,你会停下来查看短信,然后这时候电影的内容就会被忽略。这就是注意力机制的工作原理。在处理输入......
  • MYSQL五个常见的聚合函数
    学生表DDLCREATETABLE`student`(`id`int(11)NOTNULLAUTO_INCREMENTCOMMENT'学号',`createDate`datetimeDEFAULTNULL,`userName`varchar(20)DEFAULTNULL,`pwd`varchar(36)DEFAULTNULL,`phone`varchar(11)DEFAULTNULL,`age`tinyi......
  • 【Linux】编写并运行Shell脚本程序操作实例
    关于Shell脚本的介绍:Shell脚本是一种用于自动化任务和简化常见操作的脚本语言,通常用于Linux和Unix环境中。Shell脚本允许用户通过编写一系列命令和逻辑语句来执行一系列任务,从而提高了工作效率和自动化水平。以下是关于Shell脚本的详细介绍:1.基础概念:Shell本身是一个用C......
  • Java基础知识-面向对象编程(OOP)-Java集合框架-多线程和并发-Spring框架
    Java基础知识:Java的四种基本数据类型是:byte、short、int、long(整数类型)、float、double(浮点类型)、char(字符类型)、boolean(布尔类型)。它们之间的区别主要在于占用的内存大小和表示范围不同。Java中的String是不可变的意味着一旦String对象被创建,它的值就不能被修改。这意味着St......
  • 机器学习&深度学习 操作tips
    1.在运行程序时,报错如下:usage:run.py[-h]--modelMODEL[--embeddingEMBEDDING][--wordWORD]run.py:error:thefollowingargumentsarerequired:--model答:出现这个问题是因为对于代码不够理解,对于在代码包中有多个models时,举例如下:不同的model类似于定义了不......
  • 使用C语言函数对数组进行操作
        前言       在我们了解数组和函数之后,我们对数组和函数进行结合,之后完成一些操作吧    题目描述    杰克想将函数与数组结合进行一些操作,以下是他想要达到的效果,请你帮帮他吧!    创建一个整型数组,完成对数组的操作   ......
  • 【C语言中的操作符详解】
    目录一 C语言中的操作符详解:1.算术操作符2.关系操作符(比较操作符)3.逻辑操作符4.位操作符5.赋值操作符6.条件(三元)操作符7.其他操作符8.递增和递减操作符二c语言操作符,应用场景:算术操作符:位操作符:关系操作符:逻辑操作符:赋值操作符:条件(三元)操作符:其他......