MySQL学习总结(全)

2023-05-16

一、数据库操作

   1.连接数据库:mysql -u root -p

   2.查看已经有的数据库:show databases;

   3.新建数据库:create database database_name;

   4.删除数据库:drop database database_name;

   5.选择数据库:use database_name;

二、表操作

   1.查询所有的表:show tables;

   2.创建表:create table table_name(需要字段);

   3.删除表 :drop table table_name;

   4. 查看表结构:desc table_name;

   5.查看建表语句:show create table table_name;

   6.修改表名 rename :alter table old_table_name rename new_table_name;

   7.修改字段名和属性 change:alter table table_name change old_table_name new_table_name;

   8.添加字段  add:alter table table_name add new_field attr;

   9.修改字段顺序 modify:alter table table_name modify field1 attr1 [after field2|first];

   10.删除字段 drop:alter table table_name drop field;

三、数据存取

   1.插入数据:insert into table_name (field1,field2,.....) value(value1,value2,value3....);

   2.查询数据:select [field1,field2|*] from table_name [where condition];

   3.修改数据:update table_name set field1=value1,field2=value2 where condition;

   4.删除数据:delete from table_name [where condition];

   5.备份和还原:备份 mysqldump -u root -p database_name [table_name] > file

                            还原 mysql -u root -p  database_name < file

   6.where 条件:=, !=, > ,<, >=, <=, and, or, in, not in, between a and b

四、数据约束

   1.唯一性约束 unique key:alter table userinfo change idCard idCard char(18) unique;

   2.主键 primary key  自带唯一属性;

   3.自增 auto_increment:alter table table_name change field field attr auto_increment;

   4.非空约束 not null:alter table table_name change field field attr not null;

   5.默认值 default : alert table table_name change field field attr not null default 'def_value';

   6.设置注释 comment ;

   7.外键 foreign key:alter table table_name add constraint 外键名 foreign key(field) references 主表名(field) [on delete cascade on update cascade]

        on delete cascade //主表删除的时候子表跟着删除
        on update cascade //主表更新 子表更新
        on delete set null // 主表删  子表设空

五、数据查询

  A、单表

   1.查询所有列:select * from table_name [where condition];

   2.指定查询某一列或多列:select field_name[,field_name2....] from table_name

   3.去除重复项 distinct:select distinct phone,class from students;

   4.运算 +-*/:select name,score/age as score_age from table_name

   5.空值判断 is null:select * from students where phone is null

   6.排序 order by:order by field [asc|desc] [,field2 [asc|desc]]  ||select * from students order by score desc

   7.模糊查询  like:% 代表任意个字符
                               _ 代表一个任意字符
                               select * from students where phone like '159%';

   8.数量限制 limit:limit n; 从第1行(下标为0)开始取 ,取n条
                                limit m,n; 从第m条(下标从0开始)取,取n条
                                select * from students order by score desc limit 0,2;

   9.统计函数:

        avg(field) 平均值
        min(field) 最小值
        max(field) 最大值
        sum(field) 求和
        count(field) 统计条数

   10.分组查询  group by:select class,sum(field) from students group by field;

   11.分组后条件限制 having:select class,avg(score) as ascore from students group by class having ascore >=60

  B、多表

   1.连接查询:select field from table1 as t1 inner join table2  as t2 on t1.field=t2.field 

   2.子查询:select * from students where id in (select s_id from score where score<60 and subject ='语文')

六、索引+存储过程+触发器+事务

   索引:http://www.runoob.com/mysql/mysql-index.html

   存储过程:

        -- delimiter //
        -- create procedure test_out(IN s_name char(5),OUT s_age int)
        -- BEGIN
        --     select age into s_age from students where name = s_name;
        -- into 把得到的结果赋值给s_age  
        -- end//
        -- delimiter ;
        
        -- set @age=0; //定义用户变量
        -- call test_out('小橙',@age); //使用@age变量接受 out的s_age
        -- select @age; //输出变量

   触发器

-- create TRIGGER update_count after update on students for each ROW
-- BEGIN
-- 	update class set number=number+1 where id= new.class;
-- 	update class set number=number-1 where id= old.class;
-- end; 
-- update students set class='102' where id=2007;

   事务:【转载】https://www.cnblogs.com/jiangxiaobo/p/7728764.html

 

 

   

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL学习总结(全) 的相关文章

  • prometheus 学习(1)

    prometheus 配置文档 github地址 https github com prometheus prometheus blob master docs configuration configuration md 标签学习 glo
  • ROS订阅最新的消息及queue_size和buff_size的理解

    机器人应用中难免会遇到运算起来很费时间的操作 xff0c 比如图像的特征提取 点云的匹配等等 有时候 xff0c 不可避免地 xff0c 我们需要在ROS的Subscriber的Callback回调函数中进行这些费时的操作 Subscrib
  • NUC980第一篇:开发环境的搭建以及官方源码编译

    序言 之前参加了一个rtthread举办的活动 xff0c 拿到了一个新塘的NK IOT的板子 于是 xff0c 打算研究一下 xff0c 跑一跑linux 官方buildroot编译 下载地址 xff1a https gitee com
  • Linux系统安装Anaconda

    本文软件信息 xff1a 系统 xff1a RHEL8软件 xff1a Anaconda3 2022 10 Linux x86 64 sh Linux安装Anaconda的步骤都一样 xff0c 没啥差别 下载Anaconda的安装包 在官
  • apt-get vs aptitude

    apt get T 软件包管理工具 参数 h 帮助文件 q 输出到日志 无进展指示 qq 不输出信息 xff0c 错误除外 d 仅下载 不安装或解压归档文件 s 不实际安装 模拟执行命令 y 在需要确认的场景中回应 yes f 尝试修正系统
  • SPIN、VIBE 等 3D Human Pose Estimation 方法中的弱透视投影 (Weak Perspective Projection)

    弱透视投影 Weak Perspective Projection 弱透视投影假设焦距与物距足够大 xff0c 此时物体在 z z z 轴 光轴 上的变化可以忽略 SPIN VIBE 等 3D Human Pose Estimation 方
  • Nvidia Jetson Xavier NX系统从emmc到内存卡

    1 一块EMMC版本的JETSON XAVIER NX xff0c 搭配冬虫电子NCB00载板 由于板载的emmc只有16G xff0c 载板上支持SD卡 xff0c 在载板上插一个128G的内存卡来扩充以下容量 2 使用NVIDIA的SD
  • C#与STM32自定义通信协议

    功能 可通过C 上位机与STM32下位机之间进行通信可以保证接收的数据的正确性 一 C 作为上位机实现代码 using System using System Collections Generic using System IO Port
  • UCOSIII的基础知识讲解

    功能 帮助初学者初识UCOSIII掌握UCOSIII的基本知识 xff0c 具体包括任务的创建与删除 任务的挂起与恢复 软件定时器 信号量和互斥信号量 消息的传递等 一 简介 C OS II由Micrium公司提供 xff0c 是一个可移植
  • J-001 Jetson硬件电路设计概论--NANO & XAVIER NX

    Jetson硬件设计概论 1 Jetson板卡简介2 Jetson产品组合3 模组对比4 电路分析4 1 电源设计4 1 1 原理图设计4 1 2 引脚描述4 1 3 电源框图4 1 4 上电时序 4 2 USB设计4 2 1 USB 2
  • J-002 Jetson电路设计之电源设计--NANO && XAVIER NX

    Jetson电源设计 1 电源说明1 1 电源和系统引脚描述1 2 电源控制框图详情 2 上电的时许2 1 框图分析2 2 上电时序 3 GND引脚 1 电源说明 Jetson NANO和XAVIER NX核心板的电源为DC 5V 1 1
  • J-004 Jetson电路设计之HDMI设计--NANO && XAVIER NX

    HDMI电路设计 1 简介2 框图介绍3 原理图介绍 1 简介 NANO amp XAVIER NX提供一路HDMI接口 xff0c DP接口与HDMI是兼容的 xff0c 可用于扩展一路HDMI 其中引脚说明 PIN名称描述方向类型63H
  • 树莓派入坑第一天——系统烧录以及SSH登录问题

    1 首先下载镜像https www raspberrypi org downloads xff0c Raspbian系统是树莓派官方推荐的系统 xff0c 解压出img镜像文件 注意树莓派3B可能不支持老版本镜像 2 下载一个格式化SD卡的
  • c++学习之路

    3 19 内存分区模型 内存四区意义 不同区域存放的数据 xff0c 赋予不同的生命周期 给我们更大的灵活编程 程序exe 运行前分为 代码区和全局区 xff1b 运行后分为 栈区和堆区 1 代码区 存放CPU执行的机器指令 存放函数体的二
  • 写程序的步骤

    xff08 1 xff09 xff1a 一 要把实际问题提取为数学问题 相当于数学中的建模 抽象问题具体化 二 把其分解为若干个小的函数 并明白每个小函数怎样实现其功能 同时注意功能函数与主函数间的数据交互问题 三 作出 流程图 xff0c
  • Conda_安装库失败:Collecting package metadata (current_repodata.json): failed

    具体原因 xff1a update repo信息时网络有问题 于是就出现了污染 解决方法 xff1a conda clean i 然后重新随便install一个库 会重新下载repo信息 xff0c 问题解决
  • scrapy爬虫实战——抓取NBA吧的内容

    scrapy爬虫 步骤1 进入虚拟环境2 测试爬取页面3 进入开发者模式4 剥离页面中的数据5 在pycharm中码代码scrapy框架的目录 xff08 之前创建虚拟环境自动搭建 xff09 nba py源码详解 6 Debug第一步 点
  • ubuntu系统版本查询命令方法

    目录 一 使用命令 xff1a cat proc version 查看 二 使用命令 xff1a uname a 查看 三 使用命令 xff1a lsb release a 查看 四 使用命令 xff1a hostnamectl 查看 五
  • python解析xml文件(解析、更新、写入)

    Overview 这篇博客内容将包括对XML文件的解析 追加新元素后写入到XML xff0c 以及更新原XML文件中某结点的值 使用的是python的xml dom minidom包 xff0c 详情可见其官方文档 xff1a xml do
  • 一阶微分方程

    传送门https jingyan baidu com article 8065f87fb7f0652331249822 html 1 可分离变量的微分方程解法 一般形式 g y dy 61 f x dx 直接解得 g y dy 61 f x

随机推荐

  • C#多线程--信号量(Semaphore)

    Semaphore 是负责协调各个线程 以保证它们能够正确 合理的使用公共资源 也是操作系统中用于控制进程同步互斥的量 Semaphore常用的方法有两个WaitOne 和Release xff0c Release 的作用是退出信号量并返回
  • 【总结】C++工程师学习路线|推荐视频|推荐书籍

    前言 由于博主秋招拿到的offer有限 xff0c 经过对比 xff0c 决定转到C 43 43 开发技术栈 xff0c 此篇文章用于规划自己今后的成长路线并分享给大家 学习路线 C 43 43 语言本身 xff1a 我们可以将这个部分分为
  • 面试被问到的promise总结

    promise all的使用 promise all可以将多个promise实例包装成一个新的promise实例 xff0c 并且返回的值也不相同 xff0c 成功使 xff0c promise返回的值是一个结果数组 xff0c 而失败的话
  • ROS节点,消息,话题,服务的介绍

    整理结合机器人操作系统 xff08 ros xff09 浅析和网址http wiki ros org cn NODE node几乎是无处不在 xff0c 这个东西相当于可执行文件 xff0c 目前我更愿意把它当做cpp文件 xff0c 通过
  • vue实现表格的更多查询功能

    场景一 xff1a 一行足够显示完所有的查询条件 场景二 xff1a 需要多行才能显示完所有的查询条件 1 首先创建一个按钮组件SearchButton lt template gt lt el form inline class 61 3
  • FreeROTS原理学习笔记

    前言 xff1a 这仅是一篇学习笔记记录 xff0c 无指导意义 想详细了解的人 可看CSDN博主 zhzht19861011 的原创文章 FreeROTS系统 xff1a 使用习惯 xff1a 1 一般来说 xff0c 都是利用下载好的例
  • RuntimeError: dataset.make_initializable_iterator is not supported when eager execution is enabled.

    这是由于代码的接口更改 xff0c 无法正常连接数据集 xff0c 即新版本接口变了 需要按照第4章的数据集部分 xff0c 改一下数据集接口
  • 基于Android 的串口工具类

    欢迎使用串口通讯 xff0c 首先说明下我这里使用的是RS485通讯 xff0c 采用的是半双工通讯 xff0c 所以收和发不能同时操作需要发送等待一段时间来接收完数据在发送其他指令了 xff0c 这里顺便在说下RS232 xff0c 它采
  • ROS安装步骤

    ROS xff08 Robot Operating System xff09 起源于2007年斯坦福大学人工智能实验室与WillowGarage公司的个人机器人项目 xff0c 其后被Willow Garage公司开源和发展 xff0c 目
  • ros对应不同的ubuntu版本

    ros对应不同的ubuntu版本有不同的版本名字 xff1a ubuntu16 04对应ros kinetic xff1b ubuntu18 04对应ros melodic xff1b ubuntu20 04对应ros noetic 在Ub
  • ubuntu20.04安装 gym-gazebo

    官网流程安装 xff1a https github com erlerobot gym gazebo 一 环境与依赖 1 基本环境 xff1a ROS NoeticGazebo11 11 0 2 ROS相关依赖 xff1a sudo apt
  • 【无标题】Realsense ROS驱动安装以及报错处理

    参考官网 xff1a https github com IntelRealSense realsense ros 1 命令行安装 xff1a 这种方式比较简单 xff0c 没有报错 需要注意的是安装位置需要自己找 xff0c 后续修改lau
  • FAQ问答项目代码细节————BM25+BERT句子相似度

    一 建立FAQ库 一个问题三个形式 xff0c 数据增强之后问题和答案一一对应 xff0c 19MB的ask txt xff0c 答案保存在answer0 424中 xff0c 每个文件1000个回答 节省处理时间 二 BM25初始化 目的
  • 摄星智能电话面试题

    1 NER中的维度变换 xff0c BiLSTM中的层之间变换 43 CRF的输入输出原理 xff0c 维特比解码 xff1b https zhuanlan zhihu com p 97676647 https blog csdn net
  • 七月在线NLP笔试面试题知识点记录

    1 Levenshtein https www jb51 net article 98449 htm 2 LDA主题模型 https blog csdn net v july v article details 41209515 3 Les
  • python3代码加密

    Python代码加密步骤 1 准备文件 main py为要加密的主脚本 test py为测试脚本 运行测试脚本测试 encryption py为加密脚本 运行加密脚本 运行结果如下 xff1a 其中红框部分为加密文件 更换主脚本 将main
  • 文件打开方式关联错误解决方法

    1 首先更改默认打开方式 xff0c 有如下方法 xff1a 开始 gt 控制面板 gt 程序 gt 默认程序 gt 将文件类型或协议与程序关联 gt 找到相应文件扩展名 gt 点击更改程序 gt 浏览 gt 找到相应程序的安装位置 gt
  • kenLM 在windows上的Cygwin64模拟linux安装详解

    欲买桂花同载酒 前前后后搞了将近三天 xff0c 就为了使用kenlm训练一个n gram语言模型做纠错用 xff0c 一直在安装kenlm xff0c 终于安装成功了 xff0c 真是刺激 xff01 xff01 xff01 没有用公司的
  • SVN+IEDA实战

    工作要接触JAVA项目 xff0c 看来是时候增加一门语言能力了 xff0c 在以前的多轮对话项目上做二次开发 xff0c 公司希望用python实现全部过程 xff0c 原项目使用java和scala开发 公司用SVN xff0c 以前用
  • MySQL学习总结(全)

    一 数据库操作 1 连接数据库 xff1a mysql u root p 2 查看已经有的数据库 xff1a show databases 3 新建数据库 xff1a create database database name 4 删除数据