本文主要介绍了MySql数据类型的实例分析,具有一定的参考价值。有兴趣的朋友可以参考一下。希望你看完这篇文章后收获多多。让边肖带你去了解一下。
00-1010,你为什么打开MySQL作为学习版块?因为这是数据分析师必备的技能。分析数据最重要的是什么?数据当然在那种情况下!在数据爆炸式增长的时代,我们怎么能不学习数据库?其实这也是很多读者朋友想看到的,他们也建议我写。
难的不会,难的会!其实网上有很多MySQL的总结文章。不可否认,所有的知识点都写得很完整,但是!这只是给能使用MySQL数据库的朋友的查询手册。不能用就不能用(不详细介绍)。所以我就开始了这一节的写作,希望对那些转行想学MySQL的朋友有所帮助。当然,需要补充的是,这些部分并不是针对那些从事开发并想成为DBA的人,而是针对那些转行数据分析,然后需要学习MySQL数据库的人。
1.简要概述
学过编程语言的人都知道如何学习编程语言。从数据类型开始。虽然库是别人创建的,表是别人设计的,看起来这些与你无关,但是掌握这样一个知识点,绝对有助于你更好的理解和学习MySQL。
00-1010 char (m):固定长度的字符串。
varchar(m):长度不定的字符串。
以上知识可以参考下图来理解。
char和varchar存储空间利用率的比较。
从上表可以看出:
文本、文本、长文本
注意:只要存储字符串类型,就要注意编码问题,一般使用utf8编码。
2. MySQL数据类型详解
符号位和无符号位的详细说明:https://www.yisu.com/article/178768.htm.
声明整数数据类型时参数问题。
无符号参数。
-创建一个表格。
createtableperson(
pnamevarchar(20),
pagetinyintunsigned,
psexbit(1)
)charset=utf8
-插入两条记录。
插入一个人
(pname,page,psex)
价值观念
('张三',18,0),
('李四',22,0);观察下图:
">
从上图可以看出:
③ zerofill参数必须和M参数配合使用"才有意义"。
-- 对学号字段进行一个说明: -- 1:学号不能为负; -- 2:学号一般位数相同,即使不同,也会用0填充。 -- eg:00001,00013,00128,01280。 -- 创建表 create table student( sid smallint(5) zerofill not null default 0, sname varchar(20), sage tinyint unsigned, ssex bit(1) default 0 ) charset=utf8; -- 插入两条记录 insert into student(sname,sid) values ("张飞",5),("吕布",1);
观察下图:
从上图可以看出:
3)浮点数类型
举例说明:
-- swage代表工资;sbonus代表津贴,津贴不能是负数。 -- 创建表 create table salary( sname varchar(20), swage float(6,2), sbonus float(5,2) unsigned not null default 0 ) charset=utf8; -- 插入两条记录 insert into salary (sname,swage,sbonus) values ("纪晓岚",9999.99,111.11), ("和珅",-9999.99,444.44);
观察下图:
从上图中可以看出:
① float/double和decimal精度比较
-- 创建表 create table bank( id varchar(20), acc1 float(9,2), acc2 decimal(9,2) ) charset=utf8; -- 插入两条记录 insert into bank(id,acc1,acc2) values (1,1234567.45,1234567.45), (2,1234567.678,1234567.678);
观察下表:
从上表中可以看出:
4)日期/时间类型
① 什么是日期类型和时间类型?
1)日期类型:指的是年、月、日,类似于2019-11-16(2019年11月16号)
2)时间类型:指的是时、分、秒,类似于10:45:30(10点45分30秒)
② 日期/时间类型
感谢你能够认真阅读完这篇文章,希望小编分享的“MySql数据类型的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/60904.html