mysql 存储过程 CONCAT 字符串拼接
mysql 存储过程
CREATE PROCEDURE pro_province_report (IN startDate VARCHAR(),IN endDate VARCHAR(),IN SourceType INT)
/*
功能:根据时间,来源SourceType
统计 每个省份的 注册用户 投稿数 作品点击量 投票量 参与人数
pro_province_report();
*/ BEGIN DECLARE temp_user_sql VARCHAR();
DECLARE temp_works_sql VARCHAR();
#条件
DECLARE dateStr VARCHAR();
DECLARE dateStr_w VARCHAR();
#来源条件
DECLARE sourceStr VARCHAR();
DECLARE sourceStr_w VARCHAR(); IF(startDate!=''&&endDate!='') THEN
SET dateStr=CONCAT( ' AND DATE(addDate)>=DATE("',startDate,'") AND DATE(addDate)<=DATE("',endDate,'")' );
SET dateStr_w=CONCAT( ' AND DATE(w.addDate)>=DATE("',startDate,'") AND DATE(w.addDate)<=DATE("',endDate,'")' );
ELSE
SET dateStr=" AND 1=1 ";
SET dateStr_w=" AND 1=1 ";
END IF; IF(SourceType>) THEN
SET sourceStr=CONCAT(' AND SourceType="',SourceType,'" ');
SET sourceStr_w=CONCAT(' AND w.SourceType="',SourceType,'" ');
ELSE
SET sourceStr=" AND 1=1 ";
SET sourceStr_w=" AND 1=1 ";
END IF; #用户注册 临时表 DROP TEMPORARY TABLE IF EXISTS memberUserTemp;
SET temp_user_sql =CONCAT('CREATE TEMPORARY TABLE memberUserTemp
SELECT COUNT() accountSum,provinceID,province FROM MEMBERUSER WHERE provinceID> ',dateStr,sourceStr,' GROUP BY provinceID');
DROP TEMPORARY TABLE IF EXISTS memberUserTemp;
set @temp_user_sql=temp_user_sql; #将连成成的字符串赋值给一个变量(可以之前没有定义,但要以@开头)
prepare stmt from @temp_user_sql; #预处理需要执行的动态SQL,其中stmt是一个变量
EXECUTE stmt; #执行SQL语句
deallocate prepare stmt; #释放掉预处理段
#投稿数 临时表
SET temp_works_sql=CONCAT('CREATE TEMPORARY TABLE worksTemp
SELECT COUNT() worksSum,provinceID,province FROM WORKS WHERE provinceID> ',dateStr,sourceStr,' GROUP BY provinceID');
DROP TEMPORARY TABLE IF EXISTS worksTemp;
set @temp_works_sql=temp_works_sql;
prepare stmt from @temp_works_sql;
EXECUTE stmt;
deallocate prepare stmt;
END
mysql 存储过程 CONCAT 字符串拼接的更多相关文章
- mysql存储过程变量的拼接
存储过程变量的拼接 有时候我们需要模糊查询,但是同时我们又要 在模糊查询的时候使用变量,我们又想在变量的后面拼接一个%去匹配模糊查询 那么就会用到 concat函数 示例如下: www. ...
- 利用MySQL存储过程分割字符串
(转)http://tec.5lulu.com/detail/104krn1e6p2w78d77.html 现有一段字符串,如apple,banana,orange,pears,grape,要把它按照 ...
- StringBuilder String string.Concat 字符串拼接速度再议
首先看测试代码: public class StringSpeedTest { "; public string StringAdd(int count) { string str = st ...
- StringBuilder String string.Concat 字符串拼接速度
首先看测试代码: public class StringSpeedTest { "; public string StringAdd(int count) { string str = st ...
- mysql存储过程中字符串参数单引号
注意:存储过程中单引号 ,四个单引号 SET @sql = CONCAT('select user_id into ',m_user_id,' from go_user where mobile = ...
- mysql学习笔记--- 字符串函数、日期时间函数
一.常见字符串函数: 1.CHAR_LENGTH 获取长度(字符为单位) 2.FORMAT 格式化 3.INSERT 替换的方式插入 4.INSTR 获取位置 5.LEFT/RIGHT 取左 ...
- mysql字符串拼接,存储过程
添加字段: alter table `user_movement_log`Add column GatewayId int not null default 0 AFTER `Regionid` (在 ...
- mysql 字符串拼接函数CANCAT()与GROUP_CANCAT()
1.CONCAT() 拼接单行字符串 select concat(‘100’,user_id) from table1; select concat('11','22','33'); 结果 11223 ...
- [转]mysql中的字符串的拼接
字符串的拼接 1,Mysql 在Java.C#等编程语言中字符串的拼接可以通过加号“+”来实现,比如:"1"+"3"."a"+"b ...
随机推荐
- [Unity算法]点是否在多边形范围内
参考链接: https://www.zhihu.com/question/26551754 http://www.cnblogs.com/leoin2012/p/6425089.html 原理如下: ...
- yum梳理
- 低级sql语法错误: BadSqlGrammarException
at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:760) at org.springf ...
- 应用脚手架创建一个React项目
安装脚手架,这里会自动安装到你的nodejs里面 npm install create-react-app -g 进入创建目录 我这里创建一个为 react03的项目,等待下载..... create ...
- JAVA条件判断
一.基本if结构 1.流程图 l 输入输出 l 判断和分支 l 流程线 1.1 简单的if条件判断 if(表达式){ //表达式为true,执行{ ...
- 面向对象的css less 和sass
Css 初始化 reset.css 或者 normalise . Near.css兼容IE6以及现代浏览器. Oocss 也就是面向对象的css 面向对象是将cs ...
- python入门 -- 学习笔记1
学习资料:笨方法学Python 准备: 安装环境----请自行网络搜索(Windows安装很简单,和其他安装程序一样) 找一个自己习惯的编辑器(比如:sublime text 3) 创建一个专门的目录 ...
- 【Django】重定向
view函数中使用重定向方法 return HttpResponseRedirect('redir2.html')的时候不自觉的在前面加了request参数,结果报错: TypeError at /b ...
- matplotlib坐标轴的一些操作
- C++对象的内存分布和虚函数表
c++中一个类中无非有四种成员:静态数据成员和非静态数据成员,静态函数和非静态函数. 1.非静态数据成员被放在每一个对象体内作为对象专有的数据成员. 2.静态数据成员被提取出来放在程序的静态数据 ...