Home  >  Article  >  Database  >  一条Mysql语句引发的思考_MySQL

一条Mysql语句引发的思考_MySQL

WBOY
WBOYOriginal
2016-06-01 13:32:451012browse

bitsCN.com

一条Mysql语句引发的思考

 

今天看到同事写的一条mysql语句,居然没有完全看懂,顿时感觉到差距,在我的思维里,mysql语句只是增、删、查、改,原来还可以这样写。

[php] 

$sql = "SELECT category_general_table  

              FROM product_category  

             WHERE category_id IN  

                      (SELECT DISTINCT  

                              CAST(SUBSTRING(product_code, 1, 5) AS UNSIGNED) AS cid  

                         FROM product_index  

                        WHERE member_id = $memberId AND shop_id = $shopId)";  

像这个CAST、SUBSTRI NG,真是没见过这样写过。

查了一下手册,又有一个函数CONVERT和它差不多。

Cast(value as type); Convert(value ,type);

type不是都可以滴,可以转换的type如下:

二进制,同带binary前缀的效果 : BINARY    

字符型,可带参数 : CHAR()     

日期 : DATE     

时间: TIME     

日期时间型 : DATETIME     

浮点数 : DECIMAL      

整数 : SIGNED     

无符号整数 : UNSIGNED 

看来还是得多看手册啊。

 

bitsCN.com
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn