mysql中case的一个例子】的更多相关文章

最近遇到一个问题: year amount num 1991 1 1.1 1991 2 1.2 1991 3 1.3 1992 1 2.1 1992 2 2.2 1992 3 3.3 把上面表格的数据查询成: year m1 m2 m3 1991 1.1 1.2 1.3 1992 2.1 2.2 2.3 看到这样的需求,首先想到的是用case去统计以及 用group by来分组 第一版sql代码: SELECT `year`, ( THEN num END) AS n1, ( THEN num…
MySQL中case when的基本用法总结原创Backcanhave7 最后发布于2018-12-06 15:14:15 阅读数 439 收藏展开MySQL中的case when有用两种用法,官方文档中的说明如下: 用法一: CASE case_value WHEN when_value THEN statement_list [WHEN when_value THEN statement_list] ... [ELSE statement_list]END CASE用法二: CASE WHE…
SELECT a.hsid, a.house_code, a.sale_date, a.pjid, COUNT( sdid ) AS num, b.hsid, b.pscid, b.hscode, b.hsarea1, b.hsrealarea1, b.hsusage, b.hsprice, b.hsstatus,sum(CASE WHEN b.hsrealarea1 >0THEN b.hsrealarea1ELSE b.hsarea1END)  as c , c.xzarea, c.lpmc,…
语法说明: 方式一: CASE value WHEN [compare_value] THEN result [WHEN [compare_value] THEN result ...] [ELSE result] END  方式二: CASE WHEN [condition] THEN result [WHEN [condition] THEN result ...] [ELSE result] END 使用演示样例: mysql> select id,name, (gender) as '性…
1. 需要在php数组中用中文排序,但是一般使用utf8格式的文件,直接用asort排序不行.用gbk和gb2312可以.这跟几种格式的编码有关系.gbk和gb2312本身的编码就是用拼音排序的. 代码如下 复制代码 function utf8_array_asort(&$array){if(!isset($array) || !is_array($array)){return false;}foreach($array as $k=>$v){$array[$k] = iconv('UTF-…
发现mysql中类型为时间的字段,在查询时显示的时间是什么是依赖于客户端的,不同的客户端查同一个时间,可能在客户端显示的时间是不一样的.至于这个在哪里配置,以及服务端如何依据这个配置为客户端返回结果,这个还没深入研究.…
条件语句 delimiter \\CREATE PROCEDURE proc_if ()BEGIN      declare i int default 0;   if i = 1 THEN       SELECT 1;   ELSEIF i = 2 THEN       SELECT 2;   ELSE       SELECT 7;   END IF; END\\delimiter ; 循环语句 while循环 delimiter \\CREATE PROCEDURE proc_while…
解释: SELECT                case                   -------------如果    when sex='1' then '男' -------------sex='1',则返回值'男'    when sex='2' then '女' -------------sex='2',则返回值'女'      else 0                 -------------其他的返回'其他’    end                   …
CONCAT(str1,str2,...)     返回结果为连接参数产生的字符串. 如有任何一个参数为NULL ,则返回值为 NULL. 或许有一个或多个参数. 如果所有参数均为非二进制字符串,则结果为非二进制字符串. 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串.一个数字参数被转化为与之相等的二进制字符串格式:若要避免这种情况,可使用显式类型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col) mysql> SELE…
日常写SQL中可能会有一些小细节忽略了导致整个sql的性能下降了好几倍甚至几十倍,几百倍.以下这个示例就是mysql语句中的一个单引号('')引发的性能耗损,我相信很多朋友都遇到过,甚至还在这样写. 先看下我的表结构: CREATE TABLE `d_sku` ( `id` varchar() NOT NULL, `commodity_id` varchar() DEFAULT NULL, `counts` ) DEFAULT NULL, `price` ,) DEFAULT NULL, `st…