当前位置: 首页 > news >正文

【MYSQL】表操作

目录

  • 查看当前数据库含有表
  • 查看表结构
  • 创建表
  • 插入(新增create)
  • 查询(retrieve)
    • 全列查询
    • 指定列查询
    • 查询列是表达式
    • 别名查询(as)
    • 去重查询(distinct)
    • 排序查询(order by)
    • 条件查询(where)
      • 比较/逻辑运算符
      • 使用
    • 分页查询(limit)
  • 一条语句各查询间的使用顺序
  • 修改(update)
  • 删除(delect)


在对数据库中的表进行操作前都需要先使用该数据库:

use 数据库名;

查看当前数据库含有表

show tables;

该语句可以将当前数据库含有的所有表的表名显示出来。

查看表结构

desc 表名;

可以查看该表中的字段以及其类型。

创建表

语法:

create table 表名(
字段1名 数据类型1,
字段2名 数据类型2,
字段3名 数据类型3,);

创建商品goods(商品编号goods_id,商品名goods_name, 单价unitprice, 商品类别category, 供应商provider):

插入(新增create)

insert into 表名 (列名) values (对应数据); 
  1. 全列插入:
    数量必须和定义表的列的数量及顺序一致,
    前面可以省略列名,
    插入多行数据时每行数据都要用括号括起来,括号之间使用逗号隔开。
insert into goods values (1,'面包',15.5,'食物','大润发');#插入单行数据insert into goods values (2,'黄瓜',5.5,'蔬菜','大润发'),
(3,'白菜',1.5,'蔬菜','大润发');#插入多行数据
  1. 指定列插入
    数量必须和指定列数量及顺序一致。
    未指定的列默认插入null。
insert into goods (goods_id, goods_name,unitprice) values (3,'衣服',155);insert into goods (goods_id, goods_name,unitprice) values (4,'裤子',105),(5,'鞋子',200);

查询(retrieve)

全列查询

危险操作

select * from 表名;

将表中所有数据都查询出来。

指定列查询

select 列名1,列名2 from 表名;

将表中的被查询的列数据显示出来。

查询列是表达式

select 表达式1,表达式2 from 表名;

表达式可以是对列的操作,也可以是随便的表达式,都是一个表达式在结果集中拿出一列,列头表达式,列中表达式的结果。

对列的操作不会影响表中的真实数据,只会让该操作显示的结果集是表达式的结果。

别名查询(as)

select 字段1/表达式1 as 别名1,表达式2/字段2 as 别名2 from 表名;
  • 别名要紧跟着被取别名的列,
  • as可以省略,但是建议一般不省略,
  • 别名中包含空格就一定要使用单引号引起来,建议都拿单引号引起来。

去重查询(distinct)

select distinct 字段1/表达式1 from 表名;
  • 使用distinct去重时,
  • distinct必须放在字段前面,
  • 并且distinct后面的所有字段全部都有相同才可以去重。

排序查询(order by)

select 字段1/表达式1,字段2/表达式2 as 别名 from 表名 order by 字段1/表达式1/别名1 desc/asc, 字段1/表达式1/别名1 desc/asc;
  • desc 表示降序排列,
  • asc 表示升序排列,
  • 可以使用别名进行排序,
  • order by 字段后没有写排序规则默认是asc
  • 在比较时NULL是最小值,
  • 多个排序规则时,优先级按照书写顺序。

条件查询(where)

select 字段1/表达式1,字段2/表达式2 as 别名 from 表名 where 列名/表达式 比较/逻辑运算符 条件;

比较/逻辑运算符

比较运算符:

运算符说明
>, >=, <, <=大于,大于等于,小于,小于等于
=等于,NULL 不安全,例如 NULL = NULL 的结果是 NULL
<=>等于,NULL 安全,例如 NULL <=> NULL 的结果是 TRUE(1)
!=, <>不等于
between a0 and a1范围匹配,[a0, a1],如果 a0 <= value <= a1,返回 TRUE(1)
in(option1,option2,option3 …)如果是 option 中的任意一个,返回 TRUE(1)
is null是 NULL结果是 TRUE(1)
is not null不是 NULL结果是 TRUE(1)
like模糊匹配。% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符

注意事项:

  • between and是左闭右闭区间,不是Java中的左闭右开。
  • like 中的%是通配符可以匹配0个及以上个字符,而一个_只能代表一个字符。

逻辑运算符:

运算符说明
and多个条件必须都为 TRUE(1),结果才是 TRUE(1),与Java中&&一样
or任意一个条件为 TRUE(1), 结果为 TRUE(1),与Java中逻辑或一样
not条件为 TRUE(1),结果为 FALSE(0),与Java中! 一样

使用

where中不能使用别名,因为一个SQL查询语句的执行顺序是from->where->select->order by

分页查询(limit)

select 字段1/表达式1,字段2/表达式2 from 表名 limit n;#从结果集第0行数据,拿n行数据
select 字段1/表达式1,字段2/表达式2 from 表名 limit m, n;#从结果集第m行数据,拿n行数据
select 字段1/表达式1,字段2/表达式2 from 表名 limit m offset n;#从结果集第n行数据,拿m行数据

注意事项:
使用offset时offset前是要取的行数,后是偏移量也就是开始的地方。

一条语句各查询间的使用顺序

条件查询-> 排序 -> 分页查询。

select ... from 表名 where ... ORDER BY ... LIMIT n OFFSET s;

修改(update)

update 表名 set 字段1 = 修改值,字段2 = 修改值 where ... ORDER BY ... LIMIT n OFFSET s;

直接使用会导致该表中该列的值全部修改,是个危险操作,所以在使用时常常在后面加上条件查询等加以限制。

删除(delect)

delete from  表名 where ... ORDER BY ... LIMIT n OFFSET s;

直接删除会将该表所有行全部删除,是危险操作,所以我们在后面常常加上条件查询等加以限制。

相关文章:

【MYSQL】表操作

目录 查看当前数据库含有表查看表结构创建表插入&#xff08;新增create&#xff09;查询&#xff08;retrieve&#xff09;全列查询指定列查询查询列是表达式别名查询(as)去重查询(distinct)排序查询(order by)条件查询(where)比较/逻辑运算符使用 分页查询(limit) 一条语句各…...

破解USB设备通讯协议实现自定义软件控制的步骤与方法

在设备和计算机之间通过USB进行通讯的情况下&#xff0c;厂家提供的软件可以控制设备&#xff0c;但没有提供任何其他资料和支持&#xff0c;这种情况下&#xff0c;若希望自行开发软件来实现同样的功能&#xff0c;可以通过以下步骤破解通讯协议并开发自定义程序。 1. 捕获US…...

FFmpeg源码:av_init_packet、get_packet_defaults、av_packet_alloc函数分析

一、av_init_packet函数 av_init_packet函数定义在FFmpeg源码&#xff08;本文演示用的FFmpeg源码版本为7.0.1&#xff09;的源文件libavcodec/avpacket.c中&#xff1a; /*** Initialize optional fields of a packet with default values.** Note, this does not touch the…...

HarmonyOS应用开发知识地图

HarmonyOS 应用开发旅程 HarmonyOS 应用开发旅程 PS&#xff1a;Xmind原文件可以直接跳转官方具体文档地址&#xff0c;如需要原文件请联系&#xff1a;DYZZ198 01.准备与学习 学习 HarmonyOS 的基本概念和架构,搭建好所需的开发工具和环境,了解开发规范和最佳实践 了解 H…...

了解反向代理如何工作吗?

在当今数字化时代&#xff0c;网络通讯扮演着重要的角色&#xff0c;而代理技术为网络通讯提供了更多的灵活性和安全性。作为两种重要的代理技术&#xff0c;代理服务器和反向代理的运行原理和用途各有不同。本文将重点介绍反向代理的运行原理&#xff0c;深入探讨其在网络通讯…...

ASCII码对照表

常用 ASCII 码详细对照表 &#xff08;0—255&#xff09; 第 0&#xff5e;32 号及第 127 号(共 34 个)是控制字符或通讯专用字符&#xff0c;如控制符&#xff1a;LF &#xff08;换行&#xff09;、CR&#xff08;回车&#xff09;、FF&#xff08;换页&#xff09;、DEL&am…...

Git的一些简单使用

下列内容适用于git初学者&#xff0c;从创建本地git仓库到提交的一个基本过程1. 1.创建git仓库 在想创建git仓库的路径下打开git bash&#xff0c;输入以下命令行创建仓库&#xff08;一般来说&#xff0c;我觉得直接在code workspace得地方创建git仓库就可以了&#xff0c;这…...

C++基础语法(下)

前言 上一篇文章介绍了部分的引用&#xff0c;这里主要对引用的特点&#xff0c;引用与指针区别的进行区分&#xff0c;const引用权限的使用&#xff0c;内联函数的讲解。 引用特性 引用在定义时必须进行初始化一个变量可以有多个引用引用一旦引用一个实体&#xff0c;再不能…...

UKP3d创建斜管的操作

用户问&#xff1a;需要插入两个60的弯头&#xff0c;怎么操作啊&#xff1f; 以前我的回复算X,Y,Z相对空间坐标&#xff0c;适用于任何情况&#xff0c;有些难为用户。若是非特定角度&#xff0c;算起来又要下一翻功夫。 在UKP3d里提供了吸附任意角度的功能&#xff0c;任意角…...

【已解决】如何获取到DF数据里最新的调薪时间,就是薪资最高且时间最早?

问题说明&#xff1a; 前几天在Python最强王者交流群【群除我佬】问了一个Pandas处理的问题&#xff0c;这里拿出来给大家分享下。 看上去不太好理解&#xff0c;其实说白了&#xff0c;就是在工资最高里&#xff0c;再找时间最早的。 换句话说就是&#xff0c;这三个人&…...

PyQt5入门

Python中经常使用的GUI控件集有PyQt、Tkinter、wxPython、Kivy、PyGUI和Libavg。其中PyQt是Qt(c语言实现的)为Python专门提供的扩展 PyQt是一套Python的GUI开发框架,即图形用户界面开发框架.。而在Python中则使用PyQt这一工具包&#xff08;PyQt5、PyQt5-tools、PyQt5-stubs&am…...

算法力扣刷题记录 六十九【动态规划基础及509. 斐波那契数】

前言 调整一下做题顺序&#xff0c;多个章节同步进行&#xff0c;穿插练习。可以在各章节的专栏中找同一类。 记录 六十九【动态规划基础】。 一、动态规划理论基础学习 参考学习链接 二、509. 斐波那契数 2.1 题目阅读 斐波那契数 &#xff08;通常用 F(n) 表示&#x…...

如何利用Python进行数据分析

在当今这个大数据时代&#xff0c;数据分析已经成为了各行各业都非常重视的技能。而Python作为一门强大且易学的编程语言&#xff0c;成为了数据分析领域的主流工具之一。那么&#xff0c;如何利用Python进行数据分析呢&#xff1f; 一、安装Python及数据分析库 首先&#xf…...

如何判断机器学习模型的好坏之LIME和SHAP

LIME(Local Interpretable Model-agnostic Explanations)和SHAP(SHapley Additive exPlanations)是两种广泛使用的模型可解释性技术,旨在帮助理解复杂机器学习模型的决策过程。 LIME LIME (Local Interpretable Model-agnostic Explanations) 是一种技术,用于解释任何机…...

Android 是如何进行内存管理的

目录 1. 垃圾回收 (Garbage Collection)2. 内存分配3. 内存泄漏检测4. 内存优化5. 内存抖动 (Memory Churn)6. 内存警告 (Memory Warning)7. 内存分页 (Memory Paging)8. 内存分段 (Memory Segmentation)9. 内存压缩 (Memory Compaction)10. 内存分区 (Memory Partitioning)11.…...

【CSDN平台BUG】markdown图片链接格式被手机端编辑器自动破坏(8.6 已修复)

文章目录 bug以及解决方法bug原理锐评后续 bug以及解决方法 现在是2024年8月&#xff0c;我打开csdn手机编辑器打算修改一下2023年12月的一篇文章&#xff0c;结果一进入编辑器&#xff0c;源码就变成了下面这个样子&#xff0c;我起初不以为意&#xff0c;就点击了发布&#…...

WPF学习(4)- VirtualizingStackPanel (虚拟化元素)+Canvas控件(绝对布局)

VirtualizingStackPanel虚拟化元素 VirtualizingStackPanel 类&#xff08;虚拟化元素&#xff09;和StackPanel 类在用法上几乎差不多。其作用是在水平或垂直的一行中排列并显示内容。它继承于一个叫VirtualizingPanel的抽象类&#xff0c;而这个VirtualizingPanel抽象类继承…...

SQL约束

目录 1.常见的SQL约束 1.1 添加主键约束 1.2 单独添加主键约束 1.3 删除主键约束 1.4 设置自动增长 2.添加非空约束 3.添加唯一约束 4.添加默认值约束 我们已知道&#xff0c;创建数据表语法&#xff1a; create table 表名(字段名1 数据类型(长度) [约束],字段名…...

lombok使用@slf4j 运行时提示找不到符号log(Missing POM for org.projectors:lombok:jar)

1.问题表现 原本是之前搭建好的工程&#xff0c;只是换了个开发环境重新启动就不行了。一直编译不通过&#xff01; 可以看到IDEA其实是引入了依赖的 都没有出现红色波浪线 <mapstruct.version>1.5.5.Final</mapstruct.version> <lombok.version>1.18.30<…...

21. 合并两个有序链表(递归)

目录 一;题目&#xff1a; 二代码; 三&#xff1a;结果&#xff1a; 一;题目&#xff1a; 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 二代码; /*** Definition for singly-linked list.* struct ListNode {* …...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP&#xff08;Interior Gateway Protocol&#xff0c;内部网关协议&#xff09; 是一种用于在一个自治系统&#xff08;AS&#xff09;内部传递路由信息的路由协议&#xff0c;主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

大数据零基础学习day1之环境准备和大数据初步理解

学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 &#xff08;1&#xff09;设置网关 打开VMware虚拟机&#xff0c;点击编辑…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

三体问题详解

从物理学角度&#xff0c;三体问题之所以不稳定&#xff0c;是因为三个天体在万有引力作用下相互作用&#xff0c;形成一个非线性耦合系统。我们可以从牛顿经典力学出发&#xff0c;列出具体的运动方程&#xff0c;并说明为何这个系统本质上是混沌的&#xff0c;无法得到一般解…...

C++.OpenGL (20/64)混合(Blending)

混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...

comfyui 工作流中 图生视频 如何增加视频的长度到5秒

comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗&#xff1f; 在ComfyUI中实现图生视频并延长到5秒&#xff0c;需要结合多个扩展和技巧。以下是完整解决方案&#xff1a; 核心工作流配置&#xff08;24fps下5秒120帧&#xff09; #mermaid-svg-yP…...

论文阅读:Matting by Generation

今天介绍一篇关于 matting 抠图的文章&#xff0c;抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法&#xff0c;已经有很多的工作和这个任务相关。这两年 diffusion 模型很火&#xff0c;大家又开始用 diffusion 模型做各种 CV 任务了&am…...

leetcode73-矩阵置零

leetcode 73 思路 记录 0 元素的位置&#xff1a;遍历整个矩阵&#xff0c;找出所有值为 0 的元素&#xff0c;并将它们的坐标记录在数组zeroPosition中置零操作&#xff1a;遍历记录的所有 0 元素位置&#xff0c;将每个位置对应的行和列的所有元素置为 0 具体步骤 初始化…...