【测试开发学习历程】MySQL数据类型 + MySQL表创建与操作

news2024/9/21 18:50:05

前言:

半夜梦到自己没有写今天的博客,结果惊醒起来看一看。

得,真的没写。QWQ

可谓垂死病中惊坐起了。

看看发博的时间6:16,而不是什么整点的,就知道我4点就起来了,不是定时发布!!!!!

博主这么辛苦,行行好,点赞 + 关注行不行啊

目录

1.MySQL数据类型

1.1 数值型

1.1.1 整型

1.1.1.1 定义

1.1.1.2(无)符号整型数

1.1.1.3 int(11)与int(10)的含义

1.1.2 浮点型

1.1.3 各数值类型的存储范围

1.2 字符串型

1.2.1 定义

1.2.2 CHAR与VARCHAR

1.3 日期时间型

1.4 TIMESTAMP-特殊类型

2 MySQL表创建与操作

2.1 CRASHCOURSE数据库表介绍

2.2 SELECT语句

2.3 数据查询

 2.3.1 查询列

2.3.2 避免重复数据

2.4 查询结果排序

2.5 LIMIT的用法


1.MySQL数据类型

MySQL字段表类型

MySQL数据库的表是一个二维表,由一个或多个数据列构成;

每个列都有相应的数据类型,数据类型定义列可以存储的数据种类。例如,如果列中存储的为数字(或许是订单中的物品数),则相应的数据类型应该为数值类型。如果列中存储的是日期、文本、注释、金额等,则应该用恰当的数据类型规定出来;

数据类型(datatype):每个列所容许的数据的类型。每个列都有相应的数据类型,它限制(或容许)该列中存储的数据;

MySQL支持多种数据类型,大致可分为三类:

  • 数值类
  • 字符串类
  • 日期/时间类

1.1 数值型

数值型包括:

  • 整型
  • 浮点型

1.1.1 整型

1.1.1.1 定义

TINYINT:1字节,非常小的整数,带符号:-128~127,不带符合:0~255;

INT:4字节,标准整型,带符号:-2147483648~2147483647,不带符号:0~4294967295;

其他类型:SMALLINT(2字节)、MEDIUMINT(3字节)、BIGINT(8字节);

1.1.1.2(无)符号整型数

带符号的整型,符号位为0表示正数,符号位为1表示负数,以TINYINT为例:

在创建表的时候,可以通过signed和unsigned来指定某列的数据类型是否带符号;如果没指定数据类型是否带符号,默认是带符号;

1.1.1.3 int(11)与int(10)的含义

括号里的数字表示int类型的显示宽度,并非数据的长度;

比如当某字段为int(11) unsigned zerofill,当存入的数据为1时,会显示成00000000001;

同样地,如果某字段为int(10) unsigned zerofill,当存入的数据为1时,会显示成0000000001。

1.1.2 浮点型

FLOAT:4字节,单精度浮点数;

DOUBLE:8字节,双精度浮点数;

DECIMAL(M,D):M表示整数加小数的总位数,D表示小数位数,比如DECIMAL(4,2);

其中,FLOAT与DOUBLE存储的是近似值,DECIMAL存储的是准确值。

1.1.3 各数值类型的存储范围

1.2 字符串型

1.2.1 定义

字符串可以用来表示任何一种值,所以它是最基本的类型之一;

我们可以用字符串类型来存储图像或声音之类的二进制数据,也可以存储用gzip压缩的数据。

1.2.2 CHAR与VARCHAR

CHAR和VARCHAR是最常用的两种字符串类型,区别是:

CHAR是固定长度的,每个值占用相同的字符数,不够的位数MySQL会在它的右边用空格字符补足。

VARCHAR是一种可变长度的类型,每个值占用其刚好的字符数再加上一个用来记录其长度的字节即L+1个字节。

CHAR(4)

需要存储

VARCHAR(4)

需要存储

''

'    '

4字节

''

1个字节

'ab'

'ab  '

4字节

'ab'

3个字节

'abcd'

'abcd'

4字节

'abcd'

5个字节

如果数据都有相同的长度(比如手机号码),选用VARCHAR会多占用空间,因为有一位用来存储其长度。如果数据长度不一,选用VARCHAR能节省存储空间;

而CHAR不论字符长短都需要占用相同的空间,即使是空值也不例外。

1.3 日期时间型

MySQL总是把日期和日期里的年份放在最前面,按年月日的顺序显示

DATE、TIME、DATETIME类型分别存放日期值、时间值、日期和时间值的组合。格式分别是

  • “CCYY-MM-DD”
  • “hh:mm:ss”
  • “CCYY-MM-DD hh:mm:ss”

1.4 TIMESTAMP-特殊类型

如果某列的数据类型为TIMESTAMP且该列为NOT NULL,当插入数据时不指定该列的值,那么这个列就会自动取值为当前的日期和时间;

在创建和修改数据行时,如果没有明确对TIMESTAMP数据列进行赋值,则它就会自动取值为当前的日期和时间。如果表中有多个TIMESTAMP列,只有第一个会自动取值。

2 MySQL表创建与操作

2.1 CRASHCOURSE数据库表介绍

  • customers  客户表,存储客户信息;
  • vendors  供应商表,存储供应商基本信息;
  • orders  订单表,存储客户订单信息,如订单编号、订单日期、  客户ID;
  • orderitems  订单明细表,存储订单明细,如订单编号、明细编号、  产品编号、数量、价格;
  • products  产品表,存储产品基本信息,如产品编号、供应商、  价格等;
  • productnotes  产品说明表;

2.2 SELECT语句

MySQL使用select语句查询数据;

select语句的作用是从一个或多个表中查询信息;

使用select语句,必须给出至少两条信息:

  • 选择什么?
  • 从什么地方选择?

注意:SQL语言中,不区分大小写,每一条SQL语句,使用英语分号“;”表示结尾。

2.3 数据查询

 2.3.1 查询列

格式:select 列名 from 表名;

说明1:如果在from后面直接使用表名的话,需要先指定使用的是哪个数据库;

 说明2:支持列查询:select 列名1,列名2,列名3,… from 表名;

 说明3:可用“*”表示查询所有列

2.3.2 避免重复数据

如果查询到的两行内容一样,默认情况下,MySQL是会显示这些重复的行,如果需要相同的行只显示一次,可以使用distinct关键字

格式:select distinct 列名 from 表名;

2.4 查询结果排序

为了明确地排序用select语句查询出的数据,可使用order by语句;

order by语句取一个或多个列的名字,根据这些列进行排序;

格式:

select 列名 from 表名 order by 列名;

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

例如:

select * from products order by vend_id,prod_name,prod_price;

//先按vend_id排序,vend_id相同的数据,再根据prod_name去排序,然后再根据prod_price排序。

order by语句默认的是按照升序排列(从A到Z),关键字是ASC;

可以给order by语句指定降序(从Z到A)顺序排列,使用关键字DESC;

说明:DESC关键字只应用到直接位于其前面的列名。

  

2.5 LIMIT的用法

如果一个表的行非常多,可以使用limit关键字,指定需要返回多少行

格式1select 列名 from 表名 limit n;

例如:limit 3是指前三行

说明:n是限定的行数

格式2:select 列名 from 表名 limit n,m   //只显示从行号为n的行开始的后面m行

说明:MySQL中的行号是从0开始计算的,limit 2,3是第3行开始往后数3行,也就是第3,4,5行

拓:ORDER BY与LIMIT的组合

使用order by和limit的组合,能够找出一个列中最高或者最低的值;

例1:找出最贵物品的价格

说明:order by子句位于from子句之后,如果使用limit,那么它必须位于order by之后。

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

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

相关文章

python网络爬虫实战教学——requests的使用(1)

文章目录 专栏导读1、前言2、get请求3、抓取网页4、抓取二进制数据5、请求头 专栏导读 ✍ 作者简介:i阿极,CSDN 数据分析领域优质创作者,专注于分享python数据分析领域知识。 ✍ 本文录入于《python网络爬虫实战教学》,本专栏针对…

11 html 学习/作业

<!DOCTYPE html> <html><head><meta charset"utf-8"><title></title></head><body><a href"./index.html">首页</a><a href"https://www.baidu.com/">百度</a><a h…

asp.net mvc 重新引导视图路径,改变视图路径

asp.net mvc 重新引导视图路径&#xff0c;改变视图路径 使用指定的控制器上下文和母版视图名称来查找指定的视图 通过本文学习&#xff0c;你可以根据该技法&#xff0c;去实现&#xff0c;站点自定义皮肤&#xff0c;手机站和电脑站&#xff0c;其他设备站点&#xff0c;在不…

【复杂网络建模】——建模工具Matlab入门

目录 一、认识MATLAB 二、认识工具箱 三、基本操作和函数 3.1 算术操作符 3.2 数学函数 3.3 矩阵操作 3.4 索引和切片 3.5 逻辑操作 3.6 控制流程 3.7 数据输入输出 四、变量和数据类型 4.1 数值类型 4.2 整型 4.3 复数 4.4 字符串 4.5 逻辑类型 4.6 结构体&a…

【合合TextIn】深度解析智能文档处理技术与应用

目录 一、智能文档处理介绍 二、文档格式解析 三、图像增强技术解析 四、传统文字识别OCR技术解析 五、深度学习OCR技术解析 六、深度学习版面分析技术解析 七、文档分类 八、信息抽取 九、系统集成&#xff1a;将IDP处理后的数据集成到企业系统 结论 一、智能文档处…

Midjourney订阅攻略/Midjourney的基本参数和命令

AI绘画软件Midjourney使用原理 Midjourney是一个由Midjourney研究实验室开发的先进的人工智能程序&#xff0c;它可以根据用户的文本输入生成精美的图像。Midjourney的主要原理是通过收集大量已有的作品数据&#xff0c;对这些数据进行算法解析&#xff0c;它就可以通过关键词生…

#Linux(连接档概念)

&#xff08;一&#xff09;发行版&#xff1a;Ubuntu16.04.7 &#xff08;二&#xff09;记录&#xff1a; &#xff08;1&#xff09;硬链接&#xff08;inode&#xff0c;建立硬链接的文件inode号相同&#xff09; &#xff08;2&#xff09;创建硬链接:ln 文件名1 文件名…

天地一体化5G网络中LNA的辐射效应

Youssouf A S, Habaebi M H, Hasbullah N F. The radiation effect on low noise amplifier implemented in the space-aerial–terrestrial integrated 5G networks[J]. IEEE Access, 2021, 9: 46641-46651. 图2 面向卫星的5G综合网络架构方案 这篇论文《The Radiation Effect…

在线教育资源管理系统|基于JSP技术+ Mysql+Java的在线教育资源管理系统设计与实现(可运行源码+数据库+设计文档)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含java&#xff0c;ssm&#xff0c;springboot的平台设计与实现项目系统开发资源&#xff08;可…

Vue+jquery+jquery.maphilight实现图片热区高亮以及点击效果

//鼠标悬浮效果 mounted() {this.setCurrentTask(0); //对于id为mapAll的热区图&#xff0c;设置鼠标放置在上面有一个颜色 fillColor填充颜色 strokeColor边框颜色 strokeWidth边框宽度 fillOpacity 是设置热区填充颜色的不透明度的属性。 alwaysOn:true 保持常量$(function(…

txt、pdf等文件转为一行一行的doccano数据集输入格式

文章目录 doccano 数据集导入简介代码实现代码运行结果代码公开 doccano 数据集导入 在Doccano 导入数据集时&#xff0c;使用TextLine的文件格式&#xff0c;导入的文件需要为一行一行文本的数据格式&#xff0c;每一行文本在导入Doccano后就是一条数据。 简介 主要工作说明…

【图像分类】基于深度学习的杂草类型识别(9种类别,ResNet网络)

写在前面: 首先感谢兄弟们的关注和订阅,让我有创作的动力,在创作过程我会尽最大能力,保证作品的质量,如果有问题,可以私信我,让我们携手共进,共创辉煌。(专栏订阅用户订阅专栏后免费提供数据集和源码一份,超级VIP用户不在服务范围之内,不想订阅专栏的兄弟们可以私信…

27-4 文件上传漏洞 - 黑名单绕过

环境准备:构建完善的安全渗透测试环境:推荐工具、资源和下载链接_渗透测试靶机下载-CSDN博客 一、黑名单绕过和黑白名单机制: 黑名单:黑名单中的文件不允许通过。白名单:白名单中的文件允许通过。二、黑白名单判断: 当输入一串后缀如"sfahkfhakj"时,黑名单不…

26 OpenCV 查找边缘

文章目录 findContours 发现边缘drawContours 绘制边缘大致流程示例 findContours 发现边缘 cv::findContours( InputOutputArray binImg, // 输入图像&#xff0c;非0的像素被看成1,0的像素值保持不变&#xff0c;8-bitOutputArrayOfArrays contours,// 全部发现的轮廓对象…

Linux服务器免密登录配置

假如有如下三台服务器&#xff1a; 192.168.32.101&#xff0c;192.168.32.102&#xff0c;192.168.32.103 第一步&#xff1a;每一台机器都执行如下命令&#xff0c;生成密钥文件&#xff0c;一路回车到底即可第二步&#xff1a;每一台机器都执行如下命令&#xff0c;设置主…

线程池实现“线程复用”的原理

线程池实现“线程复用”的原理 学习线程复用的原理&#xff0c;以及对线程池的 execute 这个非常重要的方法进行源码解析。 线程复用原理 我们知道线程池会使用固定数量或可变数量的线程来执行任务&#xff0c;但无论是固定数量或可变数量的线程&#xff0c;其线程数量都远远…

k8s-kubectl命令详解、Pod创建过程、Pod的生命周期、定制Pod、资源对象文件

集群管理 一、如何管理集群 kubectl是用于管理Kubernetes集群的命令行工具 二、语法格式&#xff1a; kubectl [command] [TYPE] [NAME] [flags] command&#xff1a;子命令&#xff0c;如create&#xff0c;get&#xff0c;describe&#xff0c;delete type&#xff1a;…

拼多多2023年实现营收2476亿 助力品质好物与消费升级双向奔赴

拼多多集团近日发布了截至去年12月31日的财务业绩报告&#xff0c;拼多多在2023年第四季度实现了889亿元的营收&#xff0c;同比增长了惊人的123%。而在全年范围内&#xff0c;拼多多的营收更是高达2476亿元&#xff0c;同比增长了90%。 去年是拼多多全面拥抱高质量发展的元年…

流水灯的实现

#include<reg51.h> //点亮一个LED灯&#xff0c;并使其闪烁 sbit LED0P2^0; void delay(int n) {int i;for(i0;i<n;i); } void main() {while(1){LED00; //亮delay(6000);LED01;delay(6000);} } #include<reg51.h> //实现流水灯 void delay(int n) {int i;fo…

Jenkins安装 Linux 更换镜像 安装插件

Jenkins安装 Linux 更换镜像 安装插件 前言 下面叙述了三种jenkins安装的方式,jenkins安装之前必须有java环境因为他是java写的… yum安装只能安装最新版本的jenkins,但是jenkins是java写的所以他强依赖java版本,当你的服务器的java版本与jenkins版本冲突时还需要给jenkins重…