`
liukai
  • 浏览: 706488 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

一个存储过程

阅读更多
首先是创建存储过程.
DROP PROCEDURE IF EXISTS `ExternalCallToComplete`;
DELIMITER $$
CREATE PROCEDURE ExternalCallToComplete()  
BEGIN

DROP TABLE IF EXISTS `temp1`;
CREATE TABLE temp1
AS
	SELECT s.name "问卷调查名",
			SUM(CASE WHEN sa.submit_type_id='1' THEN 1 ELSE 0 END)  "调查成功"   ,
			SUM(CASE WHEN sa.submit_type_id='2' THEN 1 ELSE 0 END) "同意开通" ,
			SUM(CASE WHEN sa.submit_type_id='3' THEN 1 ELSE 0 END) "空号" ,
			SUM(CASE WHEN sa.submit_type_id='4' THEN 1 ELSE 0 END) "总机" ,
			SUM(CASE WHEN sa.submit_type_id='5' THEN 1 ELSE 0 END) "传真" ,
			SUM(CASE WHEN sa.submit_type_id='6' THEN 1 ELSE 0 END) "停机" ,
			SUM(CASE WHEN sa.submit_type_id='7' THEN 1 ELSE 0 END) "占线" ,
			SUM(CASE WHEN sa.submit_type_id='8' THEN 1 ELSE 0 END) "用户关机" ,
			SUM(CASE WHEN sa.submit_type_id='9' THEN 1 ELSE 0 END) "无人接听" ,
			SUM(CASE WHEN sa.submit_type_id='10' THEN 1 ELSE 0 END) "外呼失败" ,
			SUM(CASE WHEN sa.submit_type_id='11' THEN 1 ELSE 0 END) "黑名单" ,
			SUM(CASE WHEN sa.submit_type_id='12' THEN 1 ELSE 0 END) "无法接通" ,
			SUM(CASE WHEN sa.submit_type_id='13' THEN 1 ELSE 0 END) "欠费停机" ,
			SUM(CASE WHEN sa.submit_type_id='14' THEN 1 ELSE 0 END) "主动挂机" ,
			SUM(CASE WHEN sa.submit_type_id='15' THEN 1 ELSE 0 END) "隔日联系" ,
			SUM(CASE WHEN sa.submit_type_id='16' THEN 1 ELSE 0 END) "接通后拒绝" ,
			SUM(CASE WHEN sa.submit_type_id='17' THEN 1 ELSE 0 END) "拒绝调查" ,
			SUM(CASE WHEN sa.submit_type_id='18' THEN 1 ELSE 0 END) "接通后考虑" ,
			SUM(CASE WHEN sa.submit_type_id='19' THEN 1 ELSE 0 END) "接通后主动挂机"  
	FROM submit_answer AS sa LEFT JOIN survey AS s ON s.id = sa.survey_id GROUP BY sa.survey_id ;
	
DROP TABLE IF EXISTS `temp2`;
CREATE TABLE temp2
as
SELECT 问卷调查名 "a", (调查成功+同意开通+空号+总机+传真+停机+占线+用户关机+无人接听+外呼失败+黑名单+无法接通+欠费停机+主动挂机+隔日联系+接通后拒绝+拒绝调查+接通后考虑+接通后主动挂机) 
"b",
调查成功 "c",
调查成功/(调查成功+同意开通+空号+总机+传真+停机+占线+用户关机+无人接听+外呼失败+黑名单+无法接通+欠费停机+主动挂机+隔日联系+接通后拒绝+拒绝调查+接通后考虑+接通后主动挂机) 
"d",
 主动挂机+隔日联系+接通后考虑 
"e",
主动挂机+隔日联系+接通后考虑 /(调查成功+同意开通+空号+总机+传真+停机+占线+用户关机+无人接听+外呼失败+黑名单+无法接通+欠费停机+主动挂机+隔日联系+接通后拒绝+拒绝调查+接通后考虑+接通后主动挂机) 
"f",
接通后拒绝+拒绝调查+接通后主动挂机 
"g",
(接通后拒绝+拒绝调查+接通后主动挂机) /(调查成功+同意开通+空号+总机+传真+停机+占线+用户关机+无人接听+外呼失败+黑名单+无法接通+欠费停机+主动挂机+隔日联系+接通后拒绝+拒绝调查+接通后考虑+接通后主动挂机) 
"h" 
FROM temp1 ;

end $$



分享到:
评论

相关推荐

    Postgresql存储过程.docx

    其中,`CREATE OR REPLACE FUNCTION` 用于创建或替换一个存储过程;`过程名` 是存储过程的名称;`参数名` 和 `参数类型` 是存储过程的参数列表;`RETURNS` 用于指定存储过程的返回值类型;`AS` 和 `$body$` 用于标记...

    oracle 定时任务,使用存储过程更新数据

    为了实现定时更新数据,我们需要编写一个存储过程,该过程包含必要的SQL更新语句。例如,以下是一个简单的示例: ```sql CREATE OR REPLACE PROCEDURE update_data AS BEGIN UPDATE your_table SET column = new_...

    分享:在存储过程中使用另一个存储过程返回的查询结果集的方法

    在某些场景下,我们可能需要在一个存储过程中调用另一个存储过程,并使用其返回的结果集。本文将深入探讨如何在存储过程中使用另一个存储过程返回的查询结果集。 首先,假设我们有一个名为`sp_GetBorrowRecord`的...

    SQL存储过程试题及答案

    这个存储过程使用了两个参数,一个是课程号`@课程号`,另一个是人数`@人数`。我们可以使用以下语句来调用这个存储过程: ```sql declare @人数 int, @课程号 char(4) set @课程号 = '002' exec bb @课程号, @人数 ...

    一个存储过程- INSERT_语句生成器.sql

    INSERT_语句生成器.sql 一个存储过程- INSERT_语句生成器.sql 生成表INSERT插入语句SQL,INSERT_语句生成器.sql

    DW 关联存储过程读取和更新表

    读取操作可能涉及一个简单的SELECT语句,通过存储过程返回数据,然后在DataWindow中展示。更新操作则可能包括一个UPDATE语句,结合WHERE子句来定位特定行,然后更改该字段的值。 例如,一个简单的读取存储过程可能...

    SQL Server中存储过程比直接运行SQL语句慢的原因

    此外,存储过程可以设置参数,可以根据传入参数的不同重复使用同一个存储过程,从而高效的提高代码的优化率和可读性。最后,存储过程的安全性高,可以设定只有某些用户才具有对指定存储过程的使用权。 存储过程有三...

    存储过程初学实例

    存储过程支持参数输入输出、返回单个或多个结果集以及返回值,甚至可以在一个存储过程中嵌套调用其他存储过程。 在SQL Server中,根据定义主体的不同,存储过程主要分为三类: 1. **系统存储过程**:这些是SQL ...

    执行存储过程的代码和数据库脚本

    存储过程是数据库管理系统中的一个重要组成部分,它是一组为了完成特定功能的SQL语句集合,预编译后存储在数据库中,可以按需调用,提高了数据操作的效率和安全性。本文将围绕“执行存储过程的代码和数据库脚本”这...

    实验9 存储过程的创建和使用

    存储过程是一组预先编写的SQL语句,它允许用户像调用函数一样重复执行,提高了数据库操作的效率和安全性。 首先,理解存储过程的分类至关重要。存储过程分为系统存储过程、用户自定义存储过程和扩展存储过程。系统...

    实验六:创建存储过程和触发器1

    实验报告中,你需要详细记录每个存储过程的创建SQL语句,以及执行存储过程后的结果截图。此外,实验报告应包括实验设计思路、遇到的技术问题及解决方法、实验过程的详细描述,以及个人的分析、建议和体会。 确保...

    存储过程-04.存储过程和视图结合操作

    例如,一个电子商务系统可能有一个存储过程用于处理订单,该过程可能首先通过视图获取客户的最新订单状态,然后根据这些信息进行进一步的业务处理。 总之,存储过程和视图的结合使用是数据库设计中的一种强大工具,...

    MySQL存储过程综述及如何使用Navicat创建存储过程

      在大型项目中,有时候需要重复执行能够完成特定功能的SQL语句集,而MySQL为我们提供了存储过程的概念,存储过程是数据库中的一个重要对象,它是存储在数据库中的一组完成特定功能的SQL语句集。它第一次编译后,...

    db2 存储过程实例

    4. 多语句事务型存储过程:在一个存储过程中执行多个语句,保证事务的原子性。 六、存储过程的调试与优化 DB2提供了一些工具和特性来帮助调试和优化存储过程,如SQL诊断包、EXPLAIN计划等,以确保其高效运行。 七...

    sqlsever存储过程

    SQL Server存储过程是数据库管理系统中预编译的SQL语句集合,它允许开发人员封装一系列复杂的操作,并在需要时作为一个单元执行。存储过程是数据库设计和应用开发中的关键组件,可以提升性能、增强安全性并简化代码...

    一个存储过程的例子

    在IT行业中,数据库管理和开发是不可或缺的部分,而存储过程作为数据库中的一个重要概念,扮演着提升性能、封装复杂逻辑和提供安全性的角色。本示例是一个针对初学者的C#编程结合VS2010(Visual Studio 2010)与SQL ...

    存储过程应用案例新手学习存储过程的好资料

    例如,一个存储过程可能包含了用户登录验证的逻辑,这样每次需要验证时只需调用该过程即可。 其次,存储过程能够提高性能。由于存储过程在首次执行时会被编译成服务器内部的二进制格式,之后的调用就无需再次解析...

    数据库方面存储过程教程

    假设我们需要创建一个存储过程,用于查询员工表中的所有记录: ```sql CREATE PROCEDURE GetEmployees AS BEGIN SELECT * FROM Employees; END; ``` 调用这个存储过程的方式为: ```sql EXEC GetEmployees; ``` ...

    存储过程生成工具存储过程生成工具

    例如,"存储过程生成工具.msi"可能是一个安装程序,用于安装特定的存储过程生成工具。安装完成后,用户可以通过该工具快速地生成适用于自己项目的存储过程,从而提高开发效率,同时确保数据库操作的安全性和效率。 ...

Global site tag (gtag.js) - Google Analytics