【问题标题】:Uncompress column if different column is 1, but not if it's 0如果不同的列是 1,则解压缩列,但如果它是 0,则不解压缩
【发布时间】:2022-09-23 03:57:08
【问题描述】:

在 MySQL 中,我有一个可能被压缩的列 (BLOB),以及另一个带有 1 或 0 的列,表示该列被压缩的天气。我想解压缩它(或做一些其他操作)并在它被压缩时返回,如果不是,则简单地返回值。这可以通过单个 SQL 查询实现吗?

    标签: mysql sql


    【解决方案1】:
    SELECT IF(another_column_with_either_a_1_or_zero = 1,
              UNCOMPRESS(a_column_BLOB_that_may_be_compressed),
              a_column_BLOB_that_may_be_compressed) AS definitely_uncompressed
    FROM a_table_who_shall_not_be_named
    

    【讨论】:

    • 哦,酷! if 语句很强大。
    • 是的! IF()CASE 以及其他内置函数和控制流语法值得一读。与他们一起练习,以便在您需要它们时想到它们。
    • 我能够找到有关 IF 的信息,但没有包含动态回报的示例
    • 您经常会看到只使用选择列表中的裸列的 SQL 查询,但实际上您可以使用任何您想要的表达式。
    猜你喜欢
    • 2019-04-26
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 2016-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多