MySQL基础总结

news2025/7/9 14:37:30

一.sql数据及语言基本类型:

      1.语言的分类

              DDL:数据定义语言,用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等

              DML:数据操作语言,用来对数据库中表的记录进行操作。关键字:insert,delete,update等

              DQL:数据库查询语言,用来查询数据库中表的记录。关键字:select,from,where等

              DCL:数据库控制语言,用来定义数据库的访问权限和安全级别,以创建用户

      2.sql语句的通用语法

            (1).sql语句可以单行或多行书写,以分号结尾

            (2).可以使用空格和缩进来增强语句的可读性:基本上一个单词就一个空格

            (3).MySQL数据库的SQL语句不区分大小写。

            (4).注释字符有:/**/,#,--


      /*我是注释*/
      #我是注释
      --我是注释

           (5).运算符:

                逻辑:and(和,表示同时需要满足两个条件),or(或,表示两个条件只需满足其一即可),not(不,常用于取反)

               算数:+,-,*,/,% 分别为加,减,乘,除,取余

     3.sql中的数据类型

           int(整数长度):整数类型       double:小数类型            decimal(m,d):指定整数位于小数位长度的小数类型

          Date:日期类型,格式位yyyy-mm-dd,包含年月日,不包含时分秒

          Datetime:日期类型,格式为yyyy-mm-dd hh:mm:ss,包含时分秒

          Time:日期类型,格式为 hh:mm:ss       

二:重要的sql命令

     1.创建数据库

create datebase 数据库名

      2.修改数据库

alter table 库名 character set 编码集

     3.创建新表

create table 表名(
   写入字段
)注释;

    4.修改表

alter table 表名 rename to 新表名

   5.删除表

drop table 表名

   6.查找表中数据

select 需要查询的字段 from 查找的表名 where 查找条件

   7.更改表中数据

update 表名 set 需要修改的字段=修改后的字段 where 修改条件

  8.从数据库中删除数据

delete from  表名 where 条件,

truncate table 表名,

truncate语句删除后将重置自增列.表结构及其字段、约束、索引保持不变,执行速度比delete语句快(删除表中所有内容)

 9.从表中插入新的数据

insert into 表名(需要插入的字段名) value (需要插入的内容)

 10.创建索引(搜索键)

create index (索引名) on (表名(需要创建索引的字段名))

 11.删除索引

drop index (索引名) on (表名)

三、sql语法语句

 1.select语句

        select语句用于从数据库中选取数据

       语法:

select column_id,column_name from table_name; #查询表中指定字段column_id和column_name


 

select * from table_name;#用于查询表内所有字段,*代表表找那个所有字段

2.select distinct语句

        select distinct语句用于返回唯一不同的值

       语法:

select distinct column_name from table_name;#查询表table_name中column_name字段且返回不同的值

3.where子句

      where子句用于提取那些满足指定标准的记录

      语法:

select * from column_name where country='CN'; #从表中选出国家为cn的人名

      注: sql使用单引号来环绕文本值,如果是数值字段,不要使用引导 

     where子句中的运算符:

       运算符描述: =等于 、<>不等于

      注释:在SQL的一些版本中,该操作符可被写成 !=>大于、<小于、>=大于等于、<=小于等于between在某个范围内link搜索某种模式in指定针对某个列的多个可能值

     where子句比如:

       搜索emp等于7900的数据;

select * from emp where empno=7900;

      Where +条件(筛选行) :

       条件: 列,比较运算符,值

       比较运算符包涵:=(等于),>(大于),<(小于),>=(大于等于) ,<=(小于等于), !=和<> 表示(不等于)

       且字符串需要用单引号包裹起来,且需要区分大小写。

4.逻辑运算符

      1.And:与 同时满足两个条件的值。

Select * from emp where sal > 2000 and sal < 3000;#查找sal值大于2000且小于3000的值

      2.Or:或 满足其中一个条件的值 

Select * from emp where sal > 2000 or comm > 500;#查询 emp 表中 SAL 大于 2000 或 COMM 大于500的值。

    3.Not:非 满足不包含该条件的值。

select * from emp where not sal > 1500;#查询EMP表中 sal 小于等于 1500 的值。

 逻辑运算的优先级:

() not and or

四.特殊条件:

 1.空值判断:  is null

Select * from emp where comm not null; 查询 emp 表中 comm 列中的不为空的值。

 2.between and (在 之间的值)

Select * from emp where sal between 1500 and 3000;#查询emp表中SAL列中大于1500的小于3000的值。

     注意:大于等于 1500 且小于等于 3000, 1500 为下限,3000 为上限,下限在前,       上限在后,查询的范围包涵有上下限的值。

 3.in包含多个条件值

Select * from emp where sal in (5000,3000,1500); #查询EMP表SAL列中等于5000,3000,1500的值。

 4.like模糊查询

Select * from emp where ename like 'M%';#查询EMP表中Ename列中有M的值,M为要查询内容中的模糊信息。
  1.  % 表示多个字值、_ 下划线表示一个字符;

  2. M% : 为能配符,正则表达式,表示的意思为模糊查询信息为 M 开头的。

  3. %M% : 表示查询包含M的所有内容。

  4. %M_ : 表示查询以M在倒数第二位的所有内容。

 5.AND & OR 运算符(用于基于一个以上的条件对记录进行过滤):

 select * from Websites where alexa > 15 and (country='CN' OR country='USA');
---从 "Websites" 表中选取 alexa 排名大于 "15" 且国家为 "CN" 或 "USA" 的所有网站

 6.ORDER BY 关键字:

     ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序,ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,可以使用 DESC 关键字,默认按照升序排列,desc则按照降序排列

  语法:

select column_name,column_name from table_name 
order by column_name,column_name asc|desc; 

  例:

--从 "Websites" 表中选取所有网站,并按照 "alexa" 列排序 
select * from Websites order by alexa; 

--从 "Websites" 表中选取所有网站,并按照 "alexa" 列降序排序 
select * from Websites order by alexa desc; 

--从 "Websites" 表中选取所有网站,并按照 "country" 和 "alexa" 列排序 
select * from Websites order by country,alexa; 

   注:order by 多列的时候,先按照第一个第一个值排序,当第一个值相同时再按照第二个第二个值排序,order by 排列时,不写明asc desc的时候,默认是asc;

五.基本操作

   insert into语句: 

   insert into 语句用于向表中插入新记录

   语法:

   insert into 语句可以有两种编写形式

   第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:

insert into table_name values (value1,value2,value3,...); 

  第二种形式需要指定列名及被插入的值:

insert into table_name (column1,column2,column3,...) values (value1,value2,value3,...); 

  DELETE 语句:

  DELETE 语句用于删除表中的行

  语法:

delete from table_name where some_column=some_value; 
---表示删除表中some_column字段等于some_value的那一行数据

  删除所有数据:

  可以在不删除表的情况下,删除表中所有的行。不改变表结构、属性、索引:

delete from table_name; 
---或
delete * from table_name; 

  注意:

   where子句规定哪条记录或者哪些记录需要删除。如果省略了where子句,所有的记录都将被删除!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/6776.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PIX2SEQ: A LANGUAGE MODELING FRAMEWORK FOR OBJECT DETECTION

文章目录ABSTRACT1 INTRODUCTION2 pix2seq框架2.1SEQUENCE CONSTRUCTION FROM OBJECT DESCRIPTIONS2.2 ARCHITECTURE, OBJECTIVE AND INFERENCE2.3 SEQUENCE AUGMENTATION TO INTEGRATE TASK PRIORS3 EXPERIMENTS3.1 EXPERIMENTAL SETUP3.2 MAIN COMPARISONS3.3 ABLATION ON SE…

2022年都在说软件测试饱和了?都在担心面试不上。

今年开始&#xff0c;小编听到最多的问题就是 软件测试行业是不是饱和了&#xff1f; 软件测试行业还有前景吗&#xff1f; 无非是因为投出去的简历回复的越来越少了 据中华英才网统计&#xff0c;目前软件测试人才的缺口在100万人以上&#xff0c;并以每年20%的速度递增&am…

2.5 自定义srv C++

功能介绍 以自定义数据类型为基础&#xff0c;完成一个节点作为服务器&#xff0c;另一个节点接收传送两个数字到服务端&#xff0c;服务端计算后反馈到客户端进行打印输出 1、工作空间 1.1 创建工作空间lee_ws mkdir -p ~/lee_ws/src cd ~/lee_ws/src/ catkin_init_worksp…

Unity 旋转大总结和项目操作

操作演示 旋转 (online-video-cutter.com)旋转方法都放在了按钮上&#xff0c;第一个是初始化按钮&#xff0c;将cube恢复到&#xff08;0&#xff0c;0&#xff0c;0&#xff09;&#xff0c;但是位置不会变成&#xff08;0&#xff0c;0&#xff0c;0&#xff09; 这个是参…

clickhouse中的sql操作

DDL操作 create操作 create table t_order_mt2(id UInt32,sku_id String,total_amount Decimal(16,2),create_time Datetime,INDEX a total_amount TYPE minmax GRANULARITY 5 ) engine MergeTree partition by toYYYYMMDD(create_time) order by (id, sku_id) primary key …

【工具】工具小集

Gif录制工具 LICEcap一款轻量级屏幕录制工具&#xff0c;可以导出GIF动画图片格式&#xff0c;支持导出GIF 动画图片格式&#xff0c;可灵活调整录制窗口大小。 https://www.cockos.com/licecap/ 浏览器插件&#xff08;工具箱&#xff09; FeHelper插件支持Chrome、Firefox…

创建个人中心页面(下)

目录 布局规划前端页面 获取头像获取Bot列表 对接获取Bot信息渲染到前端 实现创建一个Bot 前端进行对接插入Bot 实现创建成功关闭和清空 修改时间 实现删除按钮 安装依赖&#xff1a;vue3-ace-editor 布局规划前端页面 使用 bootstrap 的 grids system 进行布局 在 bo…

windows常见的命令操作大全

目录 一、目录文件操作 cd命令 dir命令 md命令 rd命令 move命令 copy命令 del命令 二、文本相关操作 type命令 >命令 findstr命令 |命令 三、网络相关操作 小建议&#xff1a;跟着文章亲手敲一遍是避免忘记的有效方法 一、目录文件操作 cd命令 功能&#xf…

你真的会解决android ANR 问题吗?

前言 ​ 还记得之前写过一篇关于ANR 的介绍&#xff0c;现在看来&#xff0c;那个只是皮毛。现实中遇到应用或系统ANR 的问题&#xff0c;是很难解决的。下面进入正题&#xff0c;来详细了解下如何解决。 一.ANR 关键字 1. event log 中“am_ANR” 关键字&#xff0c;main-l…

27岁Python程序员做独立开发年收入超900万,家中有屋又有田,生活乐无边

他是谁 他叫赖利蔡斯&#xff0c;27岁的Python程序员。现在拥有一家自己的小型软件公司。 他现在的生活 躺赚 每天躺着就可以赚到钱&#xff0c;睡觉时从来不会被闹钟吵醒。 每天干自己的喜欢的事情&#xff0c;读书、编程、讨论公司业务、研究自己感兴趣的事情&#xff0…

Java#4(各类语句和一点小练习)

目录 一.分支语句 1.if语句:和C语言中的没有什么区别 2.switch语句:可以使用C语言的写法,但新增了一种更加简便的写法 二. 循环语句 1.for循环:和C语言没有什么太大区别 2.while循环:和C语言没有什么太大区别 练习:回文数的判断 3.do while(先运行一次再判断):和C语言没…

项目经理如何进行项目汇报才能让项目顺利进行,让领导一看就喜欢?

项目经理如何进行项目工作汇报才能让项目顺利进行&#xff0c;让领导一看就喜欢&#xff1f;领导听工作汇报&#xff0c;就是想知道项目干得怎么样。因此&#xff0c;项目经理事先一定要思考&#xff0c;这次工作汇报应该达到什么目的。 工作汇报要注意这三个问题 简单描述项目…

有关Git(小白一看就懂)入门版

git的使用是在工作中必备的技能&#xff0c;本系列重写自己曾经学习git的过程&#xff0c;按照从创建git仓库开始操作&#xff0c;赋每一步的演示图&#xff0c;让小白跟着文章操作&#xff0c;一步一步入门 目录 git基本概念 git使用基本流程 文件的四种状态 git的使用和基…

Vue3 - this 概念及使用方法(详细教程)

前言 对比 Vue2 &#xff0c;引出并展开 Vue3 。 本文讲述了 this 概念及应用场景&#xff0c;以及使用方法和代码示例详细讲解。 回忆 Vue2 我们在 Vue2 项目中&#xff0c;可能写得最多的单词就是 this 了&#xff0c;咱们无论是拿数据还是调方法&#xff0c;一律 this。 先…

前端学习路线(一)

很多人问我前端学习的路线是怎么样的&#xff0c;css要学多久&#xff0c;js高级要不要学&#xff0c;先学node.js还是先学vue&#xff0c;所以想通过一篇博文来讲一下这个事情 要不要学前端三剑客 这个问题是很多想快速上手前端的同学问的最多的一个问题&#xff0c;因为有很…

同样做软件测试,为什么有人月入3k-5k,有人能拿到17-20k?

同样做软件测试&#xff0c;为什么有人月入3k-5k&#xff0c;有人能拿到17-20k&#xff1f; 虽然各大培训机构一直鼓吹软件测试行业薪资高&#xff0c;但是依旧有一些拿着3-5k薪资&#xff0c;甚至找不到软件测试工作的人。 先来看一些例子&#xff1a; 1、小A在一家培训机构…

微信小程序开发教程一--注册小程序、下载开发工具及新建工程

从本章开始,我们将讲解微信小程序的简单开发流程,我将尽量使用简洁的语言,逐个步骤详细讲解,让大家都能跟得上,也希望和大家交流学习。 注册 首先,开发小程序需要先在微信注册。 打开网页:https://mp.weixin.qq.com/ 在下面找到小程序: 将鼠标移上去之后,就能看到“…

mysql的监控大屏

前言&#xff1a; 一款方便的mysql的监控大屏&#xff0c;使用开源项目实现MySQL的监控&#xff0c;对于想要进行mysql的时候情况监控来说比较重要&#xff0c;并且这款工具是不需要与代码进行结合的&#xff0c;直接运行打开就行了。 具体方式如下&#xff1a; 第一款&…

MySQL数据库期末考试试题及参考答案(03)

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl 一、填空题 插入数据时&#xff0c;如果不指定____&#xff0c;必须为每个字段添加数据。MySQL中使用____语句来更新表中的记录。MySQL提供____语句用于删除表中的数据。在…

Redis数据结构之——sds

写在前面 以下内容是基于Redis 6.2.6 版本整理总结 Redis数据结构 Redis是以k-v形式存储的内存数据库&#xff0c;其中key和value都是以对象&#xff08;object&#xff09;的形式进行存储。对象分为&#xff1a;string、list、hash、set和zet五种对象&#xff0c;这五种对象…