文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>MySQL类型转换之CAST CONVERT

MySQL类型转换之CAST CONVERT

时间:2010-05-07  来源:ubuntuer

MYSQL Cast与 CONVERT函数语法: CAST(expr   AS   type),   CONVERT(expr,type)   ,   CONVERT(expr   USING   transcoding_name)     。 CAST()   和CONVERT()   函数可用来获取一个类型的值,并产生另一个类型的值。    这个类型   可以是以下值其中的   一个:          
BINARY[(N)]    
CHAR[(N)]    
DATE    
DATETIME    
DECIMAL    
SIGNED   [INTEGER]    
TIME    
UNSIGNED   [INTEGER]   
CAST()   and   CONVERT(...   USING   ...)   是标准   SQL语法。CONVERT()的非USING   格式是ofis   ODBC语法。  
带有USING的CONVERT()   被用来在不同的字符集之间转化数据。在   MySQL中,   自动译码名和相应的字符集名称相同。
例如。   这个语句将服务器的默认字符集中的字符串   'abc'转化为utf8字符集中相应的字符串:      
   
SELECT   CONVERT('abc'   USING   utf8);      
当你想要在一个CREATE   ...   SELECT   语句中创建一个特殊类型的列,则cast函数会很有用:  
   
CREATE   TABLE   new_table   SELECT   CAST('2010-05-07'   AS   DATE);  
mysql> desc new_table;
+----------------------------+------+------+-----+---------+-------+
| Field                      | Type | Null | Key | Default | Extra |
+----------------------------+------+------+-----+---------+-------+
| cast('2010-05-07' as DATE) | date | YES  |     | NULL    |       |
+----------------------------+------+------+-----+---------+-------+
1 row in set (0.00 sec)
神奇把 你再
CREATE   TABLE   new_table1   SELECT   ('2010-05-07');
desc   new_table1;
看看
该函数也用于ENUM   列按词法顺序的排序。通常ENUM列的排序在使用内部数值时发生。将这些值按照词法顺序派给   CHAR   结果:  
   
SELECT   enum_col   FROM   tbl_name   ORDER   BY   CAST(enum_col   AS   CHAR);
CAST(expr   AS   CHAR)   将表达式视为一个带有默认字符集的字符串。    
   
若用于一个诸如   CONCAT('Date:   ',CAST(NOW()   AS   DATE))这样的比较复杂的表达式的一部分,CAST()也会改变结果。  
   
你不应在不同的格式中使用   CAST()   来析取数据,但可以使用诸如LEFT()   或   EXTRACT()   的样的字符串函数来代替。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载