首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果MYSQL插入中的语句不起作用

问如果MYSQL插入中的语句不起作用
EN

Stack Overflow用户
提问于 2017-07-28 00:31:12
回答 2查看 145关注 0票数 0

求你了,我不明白它为什么不起作用:

代码语言:javascript
复制
    SET @key = (SELECT customer.key_stamp FROM customer WHERE customer.key_stamp = "0000");
    CASE WHEN (@key > 0) THEN 
        INSERT INTO transaction
                                (transaction.to, transaction.key, transaction.type, transaction.cost_bitcoin, transaction.quantity)
                                VALUES ("0000", "f5rwsd", 2, 0.0075, 
                                        (500000 + 
                                            (
                                                (SELECT bonus.amount
                                                    FROM bonus
                                                    WHERE 500000 BETWEEN bonus.min_quantity AND bonus.max_quantity
                                                ) / 500000
                                            ) * 100))
    END;

我试过案例陈述,但仍然不起作用,我不明白这个问题。请帮帮忙。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-18 18:07:15

事实上,现在我只使用一个sql函数,它现在工作了,所有的都可以工作,切换用例mysql,如果else语句mysql也是,循环也是,就像尽管做,或者循环迭代,所有的工作,只需要在sql函数或sql过程中使用它。

票数 1
EN

Stack Overflow用户

发布于 2017-07-28 00:53:12

CASE不是有效的MySQL语句。(它不是MySQL存储程序上下文之外的有效语句。)

“为什么这不是工作”。是因为它不是有效的SQL。

CASE表达式可以在允许表达式的SQL语句中使用。(在SQL中,表达式返回特定数据类型的值。)

作为在SQL语句中使用CASE表达式的示例,如下所示:

代码语言:javascript
复制
SELECT CASE WHEN @key > 0 THEN 'somevalue' ELSE 'othervalue' END AS foo
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45363057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档