如何在 MySQL 中正确使用 CASE..WHEN

2023-11-21

这是一个演示查询,注意它非常简单,仅在 base_price 为 0 的情况下获取, 但它仍然选择条件 3:

SELECT
   CASE course_enrollment_settings.base_price
    WHEN course_enrollment_settings.base_price = 0      THEN 1
    WHEN course_enrollment_settings.base_price<101      THEN 2
    WHEN course_enrollment_settings.base_price>100 AND   
                      course_enrollment_settings.base_price<201 THEN 3
        ELSE 6
   END AS 'calc_base_price',
   course_enrollment_settings.base_price
FROM
    course_enrollment_settings
WHERE course_enrollment_settings.base_price = 0

base_price is decimal(8,0)

当在我的数据库上运行它时,我得到:

3 0
3 0
3 0
3 0
3 0


去除course_enrollment_settings.base_price之后立马CASE:

SELECT
   CASE
    WHEN course_enrollment_settings.base_price = 0      THEN 1
    ...
    END

CASE有两种不同的形式,详见manual。在这里,您需要第二种形式,因为您正在使用搜索条件.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 MySQL 中正确使用 CASE..WHEN 的相关文章

随机推荐

  • 无法识别JS服务器

    我试图为 Android 设置 React Native 当我最终尝试运行该应用程序时 反应本机运行 Android 我收到一条消息JS server not recognized continuing with build 构建已成功完成
  • WPF 列表框项和上下文菜单

    我有这样的代码
  • Python 海龟不透明度?

    只是想知道 是否可以用半透明墨水绘制 填充乌龟 就像是 turtle setfillopacity 50 Would set it to 50 transparency 运行Python 2 7 你可以通过这样做 import turtle
  • 如何从图像创建数据,例如 UCI 的“字母图像识别数据集”

    我使用 OpenCV 中的 letter regcog 示例 它使用 UCI 的数据集 其结构如下 Attribute Information 1 lettr capital letter 26 values from A to Z 2 x
  • 同步执行 Sequelize 查询

    我正在使用 Node js 和 Sequelize 带有 Postgres 后端 构建一个网站 我有一个查询返回许多带有外键的对象 并且我想将外键引用的对象列表传递给视图 在示例中 出勤包含黑客马拉松密钥 我想返回黑客马拉松列表 由于代码是
  • 无法使用 matplotlib.use('Agg'),图形始终显示在屏幕上

    我正在研究 matplotlib 不知道如何保存图形而不将其打印在屏幕上 所以我在网上做了一些研究 很多答案都说解决方案是 matplotlib use Agg 并且必须在导入 matplotlib pyplot 或 pylab 之前 然后
  • .NET 流、在对象之间传递流、最佳实践 (C#)

    我目前正在用 c 编写一个小玩具汇编程序 正在经历计算系统要素图书目录 顺便说一句 确实是一本好书 汇编器采用输入文件路径并删除垃圾 注释等 行 然后该文件被传递到解析器 最后传递到创建二进制代码的另一个模块 这并不太复杂 但我不想每次一个
  • 使用指针和比较器 C++ 的优先级队列

    我刚刚开始学习C 有一半的时间我不知道我在做什么 花几个小时在Google上搜索并盲目地将代码放入我的项目中 这可能是一个基本问题 但我似乎做不到把它做好 这是要求对于我的任务 我需要这些 在边缘类中 public bool operato
  • 如何将 Cocoa 应用程序设置为默认 Web 浏览器?

    如何将 Cocoa 应用程序设置为默认 Web 浏览器 我想创建一个当用户单击其他应用程序 邮件 iChat 等 中的 HTTP 或 HTTPS 链接时默认启动的应用程序 制作可充当默认网络浏览器的应用程序有四个步骤 前三个步骤允许您的应用
  • 如何将 Google 地图库与 Flutter Web 结合使用? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我正在将一个 flutter 移动项目移植到 flutter web 并且想知道如何将 google 地图库与 Flutter Web 一起使用 请
  • 如何使用 javascript 从字符串中删除 `//` ?

    如何去除 使用来自字符串的javascript var title 需要成为 var title A Survey of Applications of Identity Based Cryptography in Mobile Ad Ho
  • 有没有更好的方法来确定 UITableViewCell 的正确大小?

    我有一个 UITableView 单元格 该单元格的大小将根据其内容 可能是几行文本 而变化 既然看起来 heightForRowAtIndexPath 被调用before我布局单元格 我只是通过在文本字符串上调用 NSString siz
  • 如何使用不同的tsconfig文件进行测试?

    在我的项目中我使用 2 个不同的 tsconfig 文件 tsconfig json tsconfig specs json 供测试用 我如何告诉 Intellij Idea 两者都使用 即在Settings Langauges Frame
  • PHP REST 下载文件

    我有一个具有这样功能的网络服务 app gt get downloadPdf function use app log example pdf res app gt response res Content Description File
  • 如何确定Apple Watch型号?

    The WKInterfaceDevice current model属性没有给出型号 对于 Apple Watch 该字符串的值为苹果手表 如何从 iOS 确定确切的 Apple Watch 型号 只是稍微更新了 Mathieu Vand
  • 在 SQL 中,如何将位掩码总计中的值拆分为逗号分隔的字符串

    我有一个位掩码值作为 int 存储在 sql 中 我想将该值转换为位掩码值中包含的值的逗号分隔列表 例如 结果可能如下所示 id name bitMaskValue values 1 Bob 5 1 4 2 Mary 13 1 4 8 3
  • 如何更改 Xamarin 表单导航页面中的背景颜色

    我正在尝试更改 navigationPage 中 navigationBar 的背景颜色我正在使用以下代码 using System using System using Xamarin Forms using System Collect
  • 要列出的 Pandas DataFrame 列[重复]

    这个问题在这里已经有答案了 我根据另一列中满足的条件从一列中提取数据子集 我可以得到正确的值 但它在 pandas core frame DataFrame 中 我如何将其转换为列表 import pandas as pd tst pd r
  • 从 android 将 JSONArray 发布到 WCF 服务

    我在将 JSONArray 值发布到我的 WCF 服务时遇到问题 当我从 Fiddler 或 Net Test Client 发布数据时 它工作正常 每次我尝试从我的 Android 应用程序发布时 我都会收到请求错误 这是我从 Andro
  • 如何在 MySQL 中正确使用 CASE..WHEN

    这是一个演示查询 注意它非常简单 仅在 base price 为 0 的情况下获取 但它仍然选择条件 3 SELECT CASE course enrollment settings base price WHEN course enrol