mysql數據類型中細節學習

mysql中支持的數據類型有整數類型(tinyint,smallint,mediumint ,int,bigint)浮點數類型(float,double)定點數類型(decimal)位類型(bit)

數值類型中需要注意的細節就是各個類型的取值範圍

tinyint         1個字節(8位)  取值範圍也就是0~255(2的8次方 減一)

smallint      2個字節(16位)取值範圍是0~65536(2的16次方 減一)

mediumint 3個字節(24位)取值範圍是0~1677215(2的24次方 減一)

int                4個字節 (32位)取值範圍是0~(2的32次方 減一)

bigint          8個字節  (64位)取值範圍是0~ (2的64次方減一)

需要注意一點,以上說明的取值範圍都是無符號情況下,如果是有符號,那麼需要有一位代表符號位,所以取值範圍

負2的n次方~2的n-1次方減一 這裏的n就是位數

建表時候會在類型後邊加一個顯示位數 例如int(5) 或者是mediumint(3)

這個數字僅僅只是顯示時候會有點作用,對取值範圍沒有任何印象,如果插入的數據在該類型的取值範圍之內,正常插入,查詢的時候可以查詢出來,如果插入的數據,比顯示數字小,那麼就在前面填滿寬度

然後再說一下

char的長度取值範圍是0~255

varchar的長度取值範圍是0-65535

=========================================

比較運算中需要注意的問題

一般的比較運算操作,如果一個數和null比較,無論是=   <>   >   <   <=    >=那麼結果都是null

如果想要和null比較,需要使用is null 或者isnot null

還有一個null-safe的比較運算符<=>

========================================

說明mysql中操作符的優先級

首先是賦值

然後是邏輯運算符  或>與>非

然後是between case when then else

接着是比較運算符


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章