數值型別
介紹大小
範圍tinyint
十分小的資料
1個位元組
2 −7
2^2−
7—— 2−7
−1
2^-1
2−7−
1smallint
較小的資料
2個位元組
2 −15
2^2−
15—— $2^-1
mediumint
中大小資料
3個位元組
2 −23
2^2−
23—— $2^-1
int標準的整數
4個位元組
2 −31
2^2−
31—— $2^-1
bigint
較大的資料
8個位元組
2 −63
2^2−
63—— $2^-1
float
浮點數4個位元組
3.402823e+38 ~ 1.401298e-45
double
浮點數8個位元組
1.797693e+308~ 4.9000000e-324
decimal
字串形式的浮點數(用於金融計算的時候)
注意這裡在公司專案時設計金融時使用decimal,因為double和float存在精度丟失問題。
public
void
testbig()
控制台輸出:
2001299.4300000002
2001299.43
這就是精度丟失問題,當然在我們還沒有多少錢人的眼裡覺得沒什麼,可是在馬老闆眼裡可就是 大大滴壞了。
字串型別
介紹大小
char
字元固定大小的
0–255
varchar
可變字串
0–65535
tinytext
微型文字
2 8−
12^8-1
28−1
足以存放部落格能容
text
文字串216−
12^-1
216−
1寫本書都夠啦(儲存大文字)
時間日期型別
形式介紹
date
yyyy-mm-dd
日期格式
time
hh:mm:ss
時間格式
datetime
yyyy-mm-dd hh:mm:ss
最常用的時間
timestamp
時間戳1970.1.1到現在的毫秒數
year
年份表示
nullunsigned:
zerofill:
自增(auto_increment):
預設:
create table `westos`.`untitled` (
`id` int(3
) unsigned not null auto_increment comment '這是id的注釋'
, `name` int(5
) unsigned zerofill null default 預設 comment '這是name注釋'
, primary key (`id`)
) engine = innodb character set = utf8;
mysql基礎概念之列轉行,合併字段例項講解
列轉行 利用max case when then max 聚合函式取最大值 casecoursewhen 語文 thenscoreelse0end 判斷as 語文 別名作為列名 select name max case when course 語文 then score end as 語文,max ...
MySQL之列屬性
今天對關於mysql資料庫的學習做一總結,我們都知道其實真正約束欄位的是字段的資料型別,但資料型別的約束又很單一,只規定該字段放什麼資料以及資料大小,不能規定額外的第三方資訊,可我們又有其他需求,這時就需要一些額外的約束來更加保證資料的合法性。呢麼今天,我就為大家簡單介紹一下關於mysql資料庫的列...
MySQL新增字段,修改字段,刪除字段,修改表資訊
mysql的簡單語法,常用,卻不容易記住。當然,這些sql語法在各資料庫中基本通用。下面列出 一 查詢資訊 1.登入資料庫 mysql u root p 資料庫名稱 2.查詢所有資料表 show tables 3.查詢表的字段資訊 desc 表名稱 二 修改表資訊 1.修改表名 2.修改表注釋 三 ...