Home Database Mysql Tutorial MySQL存储过程例子,不能在if else里面用begin end否则会报错Erro_MySQL

MySQL存储过程例子,不能在if else里面用begin end否则会报错Erro_MySQL

Jun 01, 2016 pm 01:32 PM

bitsCN.com

MySQL存储过程例子,不能在if else里面用begin end否则会报错Error Code:1064解决

 

Error Code : 1064

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

报错是因为mysql的procedure里面if else语句里面, 用了begin end语句,去掉了就OK了.

 

[sql] 

DELIMITER $$  

  

USE `sportgbmj`$$  

  

DROP PROCEDURE IF EXISTS `sp_web_addmiddayrank`$$  

  

CREATE DEFINER=`root`@`%` PROCEDURE `sp_web_addmiddayrank`()  

BEGIN  

        /*  

    修订记录:  

    -------------------------------------------------------------------  

    版本    修订人     修订日期      修订描述  

    -------------------------------------------------------------------  

    1.0.0            2013-06-15    查询当前中午12:30-13:30比赛排名  

                                     该sp 当前比赛结束后执行  

                                     排名先决条件:  

                                     1:在一场内必须完满10(含)局以上  

                                       

    -------------------------------------------------------------------   

    */  

    DECLARE i_date      DATE ;  

    DECLARE i_starttime TIME;  

    DECLARE i_endtime   TIME;  

      

    SET i_date    = NOW();  

    SET i_endtime = NOW();  

      

    IF (i_endtime > '22:30') THEN  

        BEGIN  

            /* 夜间赛场 */  

            SET i_starttime = '21:30';  

            SET i_endtime   = '22:30';  

        END  

    ELSE  

        BEGIN  

            /* 中午场 */  

            SET i_starttime = '12:30';  

            SET i_endtime   = '13:30';  

        END  

    END IF;  

  

      

    CREATE TEMPORARY TABLE tmp_rank(  

        id INT NOT NULL AUTO_INCREMENT -- 自增  

        ,userid INT                    -- 用户标识  

        ,beans INT                     -- bean 汇总  

        ,rounds TINYINT                -- 局数 汇总  

        ,posttime TIME                 -- 时间 (该玩家本场比赛最后的时间)  

    ) ENGINE = MYISAM;  

      

    INSERT INTO tmp_rank (userid,beans,rounds,posttime)  

    SELECT  

        userid          

        ,SUM(CASE WHEN consume > 0 THEN consume ELSE 0 END) beans  

        ,COUNT(userid) rounds  

        ,MAX(posttime) AS posttime  

    FROM   

        score AS S  

    INNER JOIN   

        scorelist AS SL  

    ON  

        S.pid = SL.pid      

    WHERE    

        roomid IN ('1001') AND (postdate = i_date AND posttime >='12:30:00' AND posttime

    GROUP BY  

        userid  

    HAVING   

        (rounds >= 10)  

    ORDER BY   

        beans DESC   

        ,maxtime ASC  

    LIMIT 500;  

      

    /*   

      插入排名表  

    */  

    INSERT INTO   

        hf_playranklist (userid,rank,beans,rounds,postdate,posttime)   

    SELECT   

        userid,beans,rounds,i_date,posttime   

    FROM tmp_rank;  

      

    /*  

      插入奖品表  

    */  

    INSERT INTO hf_prizelist (userid,STATUS,prizeid,receivetime,postdate)  

    SELECT   

        userid  

        ,0  

        ,(CASE WHEN id >= 11 THEN 4  

              WHEN (id >= 3 AND id

              WHEN id = 2 THEN 2  

              WHEN id = 1 THEN 1  

         END) AS prizeid  

        ,beans  

        ,rounds  

        ,posttime  

    FROM   

        tmp_rank AS R   

    WHERE   

        rank >= 30;  

    END$$  

  

DELIMITER ;  

 

bitsCN.com
Statement of this Website
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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How do you alter a table in MySQL using the ALTER TABLE statement? How do you alter a table in MySQL using the ALTER TABLE statement? Mar 19, 2025 pm 03:51 PM

The article discusses using MySQL's ALTER TABLE statement to modify tables, including adding/dropping columns, renaming tables/columns, and changing column data types.

How do I configure SSL/TLS encryption for MySQL connections? How do I configure SSL/TLS encryption for MySQL connections? Mar 18, 2025 pm 12:01 PM

Article discusses configuring SSL/TLS encryption for MySQL, including certificate generation and verification. Main issue is using self-signed certificates' security implications.[Character count: 159]

How do you handle large datasets in MySQL? How do you handle large datasets in MySQL? Mar 21, 2025 pm 12:15 PM

Article discusses strategies for handling large datasets in MySQL, including partitioning, sharding, indexing, and query optimization.

What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? Mar 21, 2025 pm 06:28 PM

Article discusses popular MySQL GUI tools like MySQL Workbench and phpMyAdmin, comparing their features and suitability for beginners and advanced users.[159 characters]

How do you drop a table in MySQL using the DROP TABLE statement? How do you drop a table in MySQL using the DROP TABLE statement? Mar 19, 2025 pm 03:52 PM

The article discusses dropping tables in MySQL using the DROP TABLE statement, emphasizing precautions and risks. It highlights that the action is irreversible without backups, detailing recovery methods and potential production environment hazards.

How do you create indexes on JSON columns? How do you create indexes on JSON columns? Mar 21, 2025 pm 12:13 PM

The article discusses creating indexes on JSON columns in various databases like PostgreSQL, MySQL, and MongoDB to enhance query performance. It explains the syntax and benefits of indexing specific JSON paths, and lists supported database systems.

How do you represent relationships using foreign keys? How do you represent relationships using foreign keys? Mar 19, 2025 pm 03:48 PM

Article discusses using foreign keys to represent relationships in databases, focusing on best practices, data integrity, and common pitfalls to avoid.

How do I secure MySQL against common vulnerabilities (SQL injection, brute-force attacks)? How do I secure MySQL against common vulnerabilities (SQL injection, brute-force attacks)? Mar 18, 2025 pm 12:00 PM

Article discusses securing MySQL against SQL injection and brute-force attacks using prepared statements, input validation, and strong password policies.(159 characters)

See all articles