mysql 创建存储过程时,select语句 like中引用变量如何引用?

问题描述

mysql 创建存储过程时,select语句 like中引用变量如何引用?

附代码:
delimiter//

DROP PROCEDURE IF EXISTS M_DNAME //
CREATE PROCEDURE M_DNAME
(MONTH VARCHAR(2))
SELECT INCOME.CID,COUNT(*) COUNTS FROM INCOME WHERE TIME LIKE '______MONTH%';
//

delimiter ;
如上 like中的MONTH是变量 如何插入进去?

解决方案

你这是想要做什么?没明白。。

解决方案二:

CREATE PROCEDURE M_DNAME (MONTH VARCHAR(2))
BEGIN
SET @month = MONTH
SET @sql = CONCAT("SELECT INCOME.CID,COUNT(*) COUNTS FROM INCOME WHERE TIME LIKE ", @month);
PREPARE sql_real FROM @sql;
EXECUTE sql_real;
END

希望能帮到你。

解决方案三:

 delimiter//

DROP PROCEDURE IF EXISTS M_DNAME //
 CREATE PROCEDURE M_DNAME
 (MONTH VARCHAR(2))
 SELECT INCOME.CID,COUNT(*) COUNTS FROM INCOME WHERE TIME LIKE CONCAT(MONTH ,'%');
 //

delimiter ;

时间: 2024-08-30 02:39:07

mysql 创建存储过程时,select语句 like中引用变量如何引用?的相关文章

mysql创建存储过程并在php中调用

今天web开发中遇到需要利用php调取mysql的存储过程的,研究了半天终于小有所成,下面将如何使用mysql创建存储过程以及如何使用php调用mysql的存储过程做个记录,以防忘记. 1.在PHPmyadmin中创建一个test1存储过程: create procedure test1(in a int) //create创建:procedure存储过程:test1是存储过程名还管有没有参数都得加上() begin //开始 select * from test where id=a;//这里

MySQL 创建存储过程

MySQL 创建存储过程 "pr_add" 是个简单的 MySQL 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b",返回这两个参数的和. drop procedure if exists pr_add; -- 计算两个数之和 create procedure pr_add (    a int,    b int ) begin    declare c int;    if a is null then       set

sql 函数-mysql创建函数一直提示语句错误

问题描述 mysql创建函数一直提示语句错误 我在数据库的部门表里存的树形结构,在已知子部门时向上查找所有父级部门,写的函数如下 CREATE FUNCTION queryAllDept(@currdeptid varchar(50)) returns varchar(200) BEGIN declare @allname varchar(200) DEFAULT ''; declare @tempname varchar(200) DEFAULT ''; declare @tempparid

mysql 自动停止-mysql执行存储过程时自动停止

问题描述 mysql执行存储过程时自动停止 DELIMITER $$ DROP PROCEDURE IF EXISTS generatorDataCopy $$ CREATE PROCEDURE generatorDataCopy(inpid VARCHAR(50),OUT msg VARCHAR(50)) BEGIN DECLARE err INT DEFAULT 0; -- 如果出现sql异常,则将err设置为1后继续执行后面的操作 DECLARE CONTINUE HANDLER FOR

MySQL创建存储过程出错

问题描述 MySQL创建存储过程出错 解决方案 答案就在这里:如何在mysql 6.0.2下创建存储过程? 解决方案二: 你确定不是CREATE TABLE ?还有你这截屏这么小?看不清,,,, 解决方案三: 解决方案四: 解决方案五: 不知道,过程怎么创建?

解析Python中的变量、引用、拷贝和作用域的问题_python

在Python中,变量是没有类型的,这和以往看到的大部分编辑语言都不一样.在使用变量的时候,不需要提前声明,只需要给这个变量赋值即可.但是,当用变量的时候,必须要给这个变量赋值:如果只写一个变量,而没有赋值,那么Python认为这个变量没有定义.如下:   >>> a Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'a

c++-C++引用变量问题,函数中临时变量返回引用

问题描述 C++引用变量问题,函数中临时变量返回引用 C++ primer plus第六版引用一节,说不能在函数中新建一个变量,并将其引用返回.道理我都懂,就是说函数调用完后,那部分临时内存会释放.可是为什么我自己写的下述代码不报错,反而能正常运行呢? #include using namespace std; struct free_throws //此处定义一个结构体 { int i; }; const free_throws & clone2(free_throws & ft1, f

MySQL 创建存储过程详细实例教程(1/9)

mysql教程 创建存储过程 "pr_add" 是个简单的 mysql 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b",返回这两个参数的和. drop procedure if exists pr_add; -- 计算两个数之和 create procedure pr_add (    a int,    b int ) begin    declare c int;    if a is null then       s

mysql创建数据库命令与语句

mysql教程创建数据库教程命令与语句 创建数据库 create database 语句用于在 mysql 中创建数据库. 语法 create database database_name为了让 php教程 执行上面的语句,我们必须使用 mysql_query() 函数.此函数用于向 mysql 连接发送查询或命令. 方法一,利用cmd形式创建数据库 c:program filesphps教程tudymysqlbin>mysql -u root -p enter password: **** /