sql单表运用11.3
一、进入数据库操作界面
1、mysql -u root -p 敲回车 ,输入密码 ,进入数据库操作界面
2、show databases 查看所有的数据(如果没有数据库:创建数据库 create database 库名称)
3、use 数据库名 使用数据库
4、show tables 显示库中的所有表
5、建表语句
格式: create table 表名(字段名1 字符类型(字符长度),字段名2 字符类型(字符长度));
案例:create table aa(id int(10),name varchar(20));

6、查看表结构:
desc 表名
案例:

7、在navicat 中===点击库名====点击查询====新建查询=====在新建查询中输入sql语句


8、插入数据:
(1)插入方式一:
格式:INSERT INTO 表名 VALUES(值1,值2);
案例:INSERT INTO aa VALUES(1,"aa");

(2)插入方式二:(插入部分字段)
格式:INSERT into 表名(字段名) VALUES(字段值)
案例:INSERT into aa(id) VALUES("4")

(3)插入的中文字符变成?号
解决方案:
在建表时的语句后面添加:
DEFAULT charset=utf8;
案例:create table cc(cid int(5),cname char(20))DEFAULT charset=utf8;

9、删除表格
drop table 表名
案例:drop table yy ;

==============================
二、数据类型
1、数值类型
int 存储类型
float 浮点数

2、字符类型
char
varchar

3、时间类型
date
time
datetime
year

注意字符的长度:
int(20)
varchar(20)
======================================
约束:
约束用于对表中字段进行限制,保证表中数据的正确性和唯一性
1、primary key 主键约束
非空,唯一,用于唯一标识的记录,类似身份证。
一个表中只用一个主键

2、not null 非空约束

3、 unique 唯一索引
保证字段值具有唯一性,并且能为空,一个表中可以有多个唯一索引

4、default 默认值约束
定义:默认给字段指定默认值

5、auto_increment 自增长约束(一般都是和主键同时使用)
作用:在整数类型,字段默认值从1开始自增
(1)一般和主键约束一起使用,主要针对id
(2)每插入一条数据,就是在字段上自动+1,

=========================================
1、新建表

表结构的操作:
2、add 添加字段
格式:ALTER TABLE 表名 add 字段名 字符类型(字符长度);
案例:ALTER TABLE student2 add dcs int(20);

3、change 修改字段
格式:ALTER TABLE 表名 change 旧字段名 新字段名 字符类型(字符长度);
案例:ALTER table student2 change dcs hzdcs int(19);

4、 drop 删除字段
格式:ALTER table 表名 drop 字段名 ;
案例:ALTER table student2 drop hzdcs ;

5、rename 修改表名

6、modify after 字段的调换
格式:ALTER table 表格 MODIFY 变动的字段 字段类型(字段长度) after 指定字段 ;
案例:ALTER table hz MODIFY math int(10) after id ;

7、first 添加字段到第一位
格式:alter table 表名 add 表字段 字符类型(字符长度) first ;
案例:alter table hz add no int(20) first ;

=========================================
数据库汇中:增、删、改、查
一、查询语句:
(1)查询一个表中的所有数据
格式:select * from 表名 ; * 表示所有的字段
案例:select * from hz ;

(2)查询部分字段(多个字段用,分割)
格式:select 字段1,字段2 from hz ;
案例:select id,name from hz ;

(3)查询字段可以通过as 取别名
格式:
案例1( as写,):
select id as " 编号",name as "姓名" from hz ;
案例2(可以省略 as不写):
select id " 编号",name "姓名" from hz ;

(4)指定条件查询内容:
where +条件
条件1:
比较运算:>,<,=,!=,<>,>=,<=
条件2:
and ,or ,between ....and ,in , is not null
案例1:= 等于
select id ,name from hz where id=1;
案例2:> 大于
select id ,name from hz where id>1;
案例3:<小于
select id ,name from hz where id<2;
案例4:<=小于等于
select id ,name from hz where id<=2;
(5)
案例5:>=大于等于
select id ,name from hz where id>=2;
(6)!=不等于
案例6:select id ,name from hz where id != 2;
(7)<>不等于
select id ,name from hz where id <> 2;
================================
(8)and 同时满足条件
案例8; and 是同时满足多个条件
select id ,name,math from hz where id > 2 and math>90;
(9)or 只要满足其中一个条件 就显示
select id ,name,math from hz where id > 6 or math>90;
(10)between 。。。and 在什么范围之间
案例:select * from hz where id BETWEEN 3 and 6 ;
备注:包含了本身,
(11)in 在一组数据中选择(在数据汇总匹配)
案例:select * from hz where id in (1,3,8)
(12)not in 不在一组数据中选
案例:select * from hz where id NOT in (1,3,8)
(13)is null 为空的数据
select * from hz where class is null;
(14)is not nu 不为空的数据
select * from hz where class is not null;
==========================================
order by 排序
(1)降序 (大到小)
order by desc
案例:select * from hz order by id desc ;

(2)升序(小到大)
asc 或不写
案例:
select * from hz order by id asc ;
select * from hz order by id ;

(3)二次排序
案例:select * from hz order by math desc ,id desc;

=====================
like 模糊匹配查询
%:表示匹配1个字符或多个字符
_ : 下滑线表示一个字符
案例1:匹配xx开头的数据
select * from hz where math like "7%"; # 匹配7开头的数据
案例2:匹配xx结尾数据
select * from hz where math like "%7"; #匹配7结尾的数据
案例3:匹配含有xx结尾数据
select * from hz where math like "%7%"; #匹配含有7的数据
案例4:匹配指定位数的数据
select * from hz where math like "7_"; #匹配具体位数的数据
=====================
limit (索引位,步长) 显示指定的数据,限制;
根据索引位置来取值,从0开始,一个表第一行的索引就是0,第二行就是1
select * from hz limit 2; #表示取两行数据, 2 表示步长
select * from hz limit 1,2#表示从索引1开始第二行,2表示步长2行
select * from hz limit 4,3 ;# 表示从索引4开始取值,第五行开始,取三行,
=====================
sql 聚合函数
max 最大数
案例1:select max(math) from hz ;
min最小数
案例2:select min(math) from hz ;
avg 平均值
案例3:
select avg(math) from hz ;
sum 求和
案例4:
select sum(math) from hz ;
count 统计
案例5:select count(math) from hz ;
distinct 去重
案例6:
select DISTINCT(math) from hz ;
==================
group by ....... having
group by 是分组,一般不会单独使用,通常和聚合函数组合使用
案例1:分组
select sum(math),class from hz GROUP BY class ;
案例2:分组 在条件 having
(1)select sum(math) s,class from hz GROUP BY class having s>200 ;
(2)select sum(math) s,class from hz GROUP BY class having sum(math)>200 ;
注意:having 一般接在group by 后面
==================
改:
update ......set......
格式:update 表名 set 字段名=新值 where条件;
案例:update hz set id=1 where id=9;
==================
删除:
(1)delete
格式:DELETE from 表名 where 条件;
DELETE from hz where id=1;
(2) truncate 快速删除数据
格式:
truncate 表名 ;
案例:
truncate ff ;
(3)drop 删除
格式:drop table 表名
案例:drop table emp ;
drop >truncate> delete
==================
单行注释:ctrl +/
取消注释:shift+ctrl+/
多行注释:选中多行 ,ctrl +/
取消注释:选中多行 shift+ctrl+/
===============================
备份:
(1)备份表结构:
格式:create table 新表名 like 旧表名;
create table emp_new like emp;

(2)备份表数据
格式:
INSERT into 新表结构 select * from 旧表有数据 ;
案例:
INSERT into emp_new select * from emp ;

(3)备份部分数据
格式:INSERT into 表名(字段1,字段2) select 字段1,字段2 from 旧表 ;
案例:INSERT into emp2(sid,name) select sid ,name from emp ;

(4)备份表结构和数据
格式:
create table 新表 as (select * from 原表);
案例:create table hh as (select * from emp);

=========================================================================
在linux 中:
备份:
格式:mysqldump -u root -p 原库>新sql脚本名
案例:mysqldump -u root -p hz017>/home/hz17.sql
还原:

还原:
格式:mysql -u root -p 新库<备份好的脚本
案例:mysql -u root -p new</home/hz17.sql

分类: 教学笔记
相关文章:
sql单表运用11.3
一、进入数据库操作界面 1、mysql -u root -p 敲回车 ,输入密码 ,进入数据库操作界面 2、show databases 查看所有的数据(如果没有数据库:创建数据库 create database 库名称) 3、use 数据库名 使…...
YOLOv5目标检测学习(1):yolo系列算法的基础概念
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、基于深度学习的目标检测需要哪些步骤?二、数据准备(即准备数据集)1.目标检测的数据集如何获取?2.数据集包括…...
【大数据】通过 docker-compose 快速部署 MinIO 保姆级教程
文章目录 一、概述二、MinIO 与 Ceph 对比1)架构设计对比2)数据一致性对比3)部署和管理对比4)生态系统和兼容性对比 三、前期准备1)部署 docker2)部署 docker-compose 四、创建网络五、MinIO 编排部署1&…...
VMware 虚拟机安装windows 10操作系统
先提前准备好镜像文件 1.创建新的虚拟机 2.选择自定义,然后下一步 v Windows 建议选择2G以上,下一步 选择网络地址转换(NAT),下一步 这里可按自己的需求来分区,也可以安装好后再分区 选择立即重启ÿ…...
Mysql实战(2)之MySQL执行流程
-- 查看mysql当前有多少连接 show global status like Thread%; /* Threads_cached:缓存中的线程连接数 Threads_connected:当前打开的连接数 Threads_created:为处理连接创建的线程数 Threads_running:非睡眠状态的连接数&…...
ES6 | (二)ES6 新特性(下) | 尚硅谷Web前端ES6教程
文章目录 📚迭代器🐇定义🐇工作原理🐇自定义遍历数据 📚生成器函数🐇声明和调用🐇生成器函数的参数传递🐇生成器函数案例 📚Promise📚Set🐇Set的定…...
客户案例|用友NC财务系统上云
本文分享一次成功将用友NC财务系统上云的经验,主要涉及阿里云上Oracle ASM存储扩容,阿里云ESC RAC服务器扩容,阿里云上Oracle RAC数据库迁移等相关技术,一起来看看吧! 1 客户数据库上云背景 本次项目我司主要负责客户…...
OceanPen Art AI绘画系统内容讲解
在一个崇高的目标支持下,不停地工作,即使慢,也一定会获得成功。 —— 爱因斯坦 演示站点: ai.oceanpen.art官方论坛: www.jingyuai.com 💡技术栈 前端:VUE3后端:Java数据…...
类 Unix 系统的文件目录结构
以下是类 Unix 系统的文件目录结构、各个目录主要存放的文件以及缩写的全称的详细说明: 根目录 /: 全称: Root Directory说明:根目录是整个文件系统的起点,包含了所有其他目录和文件。 /bin 目录: 全称: Binary说明&a…...
外部存储器接口(EMIF)
外部存储器接口(EMIF) 该设备支持双核架构;为了为每个CPU子系统提供一个专用的EMIF,该设备支持两个EMIF模块——EMIF1和EMIF2。两个模块完全相同,具有相同的功能集,但具有不同的地址/数据大小。EMIF1在CPU…...
华为认证HCIP报名条件有哪些?考试要求介绍
华为HCIP认证是很多网络工程师的考证首选,尤其对于刚入行不久的网络工程师们来说,这个证书无论是从难度出发还是从含金量出发,都是值得一考的。 那么如果想报名华为HCIP认证有哪些条件以及考试要求,华为HCIP的报名需不需要通过机…...
【Python】变量的引用
🚩 WRITE IN FRONT 🚩 🔎 介绍:"謓泽"正在路上朝着"攻城狮"方向"前进四" 🔎🏅 荣誉:2021|2022年度博客之星物联网与嵌入式开发TOP5|TOP4、2021|2222年获评…...
nextjs13如何进行服务端渲染?
目录 一、创建一个新项目 二、动态获取后端数据进行服务端渲染出现的问题 三、nextjs13如何进行服务端渲染 nextjs13是nextjs的一个重大升级,一些原本在next12当中使用的API在nextjs13上使用十分不便。本文将着重介绍在nextjs13及以上版本当中进行服务端渲染的方…...
Redis-基础篇
Redis是一个开源、高性能、内存键值存储数据库,由 Salvatore Sanfilippo(网名antirez)创建,并在BSD许可下发布。它不仅可以用作缓存系统来加速数据访问,还可以作为持久化的主数据存储系统或消息中间件使用。Redis因其数…...
【好书推荐-第七期】《RTC程序设计:实时音视频权威指南》(音视频开发必看!)
😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公粽号:洲与AI。 🎈 本文专栏:本文收录…...
还在犹豫学不学?鸿蒙技术是否有前途的最强信号来了
2024年3月3日 上午10 点,深圳官方账号发布了一篇关于鸿蒙技术发展的重要文章,看到这篇文章后我非常激动,忍不住和大家分享一下! 华为鸿蒙系统自提出以来,网友们的态度各不相同,有嘲笑“安卓套壳”的&#x…...
webpack的plugin 插件教程
Webpack 是一个流行的前端打包工具,通过使用插件(plugin),我们可以对 Webpack 进行扩展和定制,实现更多功能和优化构建过程。在本教程中,我将向你介绍如何编写一个简单的 Webpack 插件,并演示如…...
v72.关于指针操作的补充
1.指针作为函数参数 调用函数时,传递参数的形式决定了是否可以修改这些参数。 传值方式:传递了参数给函数,并且这个参数是基本数据类型,如(int,float),那么函数内对参数的任何操作…...
【学习心得】爬虫JS逆向通解思路
我希望能总结一个涵盖大部分爬虫逆向问题的固定思路,在这个思路框架下可以很高效的进行逆向爬虫开发。目前我仍在总结中,下面的通解思路尚不完善,还望各位读者见谅。 一、第一步:明确反爬手段 反爬手段可以分为几个大类 &#…...
如何使用Logstash搜集日志传输到es集群并使用kibana检测
引言:上一期我们进行了对Elasticsearch和kibana的部署,今天我们来解决如何使用Logstash搜集日志传输到es集群并使用kibana检测 目录 Logstash部署 1.安装配置Logstash (1)安装 (2)测试文件 ÿ…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践
作者:吴岐诗,杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言:融合数据湖与数仓的创新之路 在数字金融时代,数据已成为金融机构的核心竞争力。杭银消费金…...
django blank 与 null的区别
1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是,要注意以下几点: Django的表单验证与null无关:null参数控制的是数据库层面字段是否可以为NULL,而blank参数控制的是Django表单验证时字…...
Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...
