六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

MySQL顯式分類(lèi)轉(zhuǎn)換案例分享

[摘要]在之前的文章中,我們提到過(guò)CAST函數(shù),用于顯示進(jìn)行類(lèi)型轉(zhuǎn)換。在避免隱式類(lèi)型轉(zhuǎn)換時(shí),好處多多。其實(shí)這里面還有很多細(xì)節(jié),是需要梳理下的。本文主要介紹了MySQL顯式類(lèi)型轉(zhuǎn)換的基礎(chǔ)知識(shí),通過(guò)實(shí)例給出了分...

在之前的文章中,我們提到過(guò)CAST函數(shù),用于顯示進(jìn)行類(lèi)型轉(zhuǎn)換。在避免隱式類(lèi)型轉(zhuǎn)換時(shí),好處多多。其實(shí)這里面還有很多細(xì)節(jié),是需要梳理下的。本文主要介紹了MySQL顯式類(lèi)型轉(zhuǎn)換的基礎(chǔ)知識(shí),通過(guò)實(shí)例給出了分析結(jié)果,一起學(xué)習(xí)下吧。

首先來(lái)看看下面這個(gè)轉(zhuǎn)換:

mysql> SELECT CAST('2017-12-14' AS DATE);
+----------------------------+
  CAST('2017-12-14' AS DATE)  
+----------------------------+
  2017-12-14          
+----------------------------+
1 row in set (0.00 sec)

其中:

2017-12-14 是待轉(zhuǎn)換的數(shù)據(jù)。

DATE為轉(zhuǎn)換后的類(lèi)型。

標(biāo)準(zhǔn)語(yǔ)法是這樣的:

CAST(expr AS type)

這里需要注意的是type類(lèi)型不支持所有的數(shù)據(jù)類(lèi)型,而是支持特定的數(shù)據(jù)類(lèi)型,也是今天這篇文章的重點(diǎn)。(我就吃過(guò)這個(gè)虧,想當(dāng)然的以為支持所有數(shù)據(jù)類(lèi)型,結(jié)果就被打臉了) 。

不支持的報(bào)錯(cuò):

mysql> SELECT CAST('1024' AS int);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'int)' at line 1

支持的類(lèi)型

下面是CAST函數(shù)支持轉(zhuǎn)換的數(shù)據(jù)類(lèi)型列表:

類(lèi)型 備注
DATE YYYY-MM-DD
DATETIME YYYY-MM-DD HH:mm:ss
TIME HH:mm:ss
DECIMAL 通常用于帶小數(shù)位
CHAR 固定長(zhǎng)度字符串
NCHAR 類(lèi)型于CHAR一致
SIGNED 一個(gè)有符號(hào)的64整數(shù)位
UNSIGNED 一個(gè)無(wú)符號(hào)的64整數(shù)位
BINARY 二進(jìn)制字符串
JSON MySQL 5.7.8 及更高版本

注意:

其中DATE支持的范圍是: 1000-01-01 至 9999-12-31,(實(shí)驗(yàn)版本為:)

如果為: 999-01-01 結(jié)果則會(huì)0999-01-01。

如果為: 01-01-01則會(huì)為:2001-01-01。

mysql> select cast('999-11-11' as DATE);
+---------------------------+
  cast('999-11-11' as DATE)  
+---------------------------+
  0999-11-11         
+---------------------------+
1 row in set (0.00 sec)
mysql> select cast('01-11-11' as DATE);
+--------------------------+
  cast('01-11-11' as DATE)  
+--------------------------+
  2001-11-11         
+--------------------------+
1 row in set (0.00 sec)
mysql> select version();
+-----------+
  version()  
+-----------+
  5.7.20   
+-----------+
1 row in set (0.00 sec)

2. CAST函數(shù)中expr的值可以轉(zhuǎn)換為type,其轉(zhuǎn)換的結(jié)果才正確,否則轉(zhuǎn)換后的結(jié)果默認(rèn)值,如Null,0等。

例如:一個(gè)Char類(lèi)型轉(zhuǎn)換為Demical類(lèi)型,轉(zhuǎn)換的結(jié)果就為0。

mysql> SELECT CAST('ANDYQIAN' AS DECIMAL);
+-----------------------------+
  CAST('ANDYQIAN' AS DECIMAL)  
+-----------------------------+
               0  
+-----------------------------+
1 row in set, 1 warning (0.00 sec)

轉(zhuǎn)換案例

這里給出一些常用的類(lèi)型轉(zhuǎn)換例子。

DATE 類(lèi)型

mysql> select cast('2017-12-14' as DATE);
+----------------------------+
  cast('2017-12-14' as DATE)  
+----------------------------+
  2017-12-14          
+----------------------------+
1 row in set (0.00 sec)

TIME 類(lèi)型

mysql> select cast('12:00:00' as TIME);
+--------------------------+
  cast('12:00:00' as TIME)  
+--------------------------+
  12:00:00          
+--------------------------+
1 row in set (0.00 sec)

DATETIM 類(lèi)型

mysql> select cast('2017-12-14 00:11:11' as DATETIME);
+-----------------------------------------+
  cast('2017-12-14 00:11:11' as DATETIME)  
+-----------------------------------------+
  2017-12-14 00:11:11            
+-----------------------------------------+
1 row in set (0.00 sec)

SIGNED類(lèi)型

mysql> select cast('-1024' as SIGNED);
+-------------------------+
  cast('-1024' as SIGNED)  
+-------------------------+
           -1024  
+-------------------------+
1 row in set (0.00 sec)

UNSIGNED類(lèi)型

mysql> select cast('-1024' as UNSIGNED);
+---------------------------+
  cast('-1024' as UNSIGNED)  
+---------------------------+
    18446744073709550592  
+---------------------------+
1 row in set, 1 warning (0.00 sec)

DECIMAL類(lèi)型

mysql> select cast('18.11' as DECIMAL(18,2));
+--------------------------------+
  cast('18.11' as DECIMAL(18,2))  
+--------------------------------+
              18.11  
+--------------------------------+
1 row in set (0.00 sec)

相關(guān)推薦:

MySQL升級(jí)的最佳方法實(shí)例分享

詳解php封裝Mysql操作類(lèi)

PHP如何解決MySQL存儲(chǔ)數(shù)據(jù)中文亂碼

以上就是MySQL顯式類(lèi)型轉(zhuǎn)換實(shí)例分享的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門(mén)到精通的SQL知識(shí)。




主站蜘蛛池模板: 日韩 亚洲 中文 图片 小说 | 午夜看毛片 | 亚洲综合第一页 | 青草视频app | 亚洲欧洲一区二区三区在线观看 | 天堂在线最新资源 | 亚州黄网 | 亚洲欧美日韩精品久久久 | 婷婷综合七月激情啪啪 | 婷婷综合激六月情网 | 小视频在线观看免费 | 最近新韩国hd视频 | 日韩在线视频精品 | 视频日韩p影院永久免费 | 日本三级韩国三级香港三级网站 | 色综合色综合色综合色综合 | 日本免费网址 | 色呦呦视频在线观看 | 日本黄又粗暴一进一出抽搐文 | 日本高清www视频在线观看 | 日本一二三区在线视频 | 四虎影院免费看 | 窝窝午夜色视频国产精品东北 | 色噜噜视频在线观看 | 性荡视频在线播放视频 | 四虎影永久在线观看网址 | 视频一区日韩 | 偷自视频视频区免费 | 欧美一级特黄特色大片 | 亚洲国产精品一区二区久久hs | 中文字幕日韩精品亚洲七区 | 亚洲 另类 在线 欧美 制服 | 自拍网视频| 亚洲综合色区中文字幕 | 色无极在线观看 | 亚洲黄视频在线观看 | 欧美一级特黄视频 | 日韩成人免费aa在线看 | 亚洲精品免费在线视频 | 亚洲成年www | 婷婷四房综合激情五月性色 |