You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询指定列并按条件返回目标列值(不符合时留空)

条件返回列的SQL查询实现

示例数据表

IDnamecitycat
1alphadoladu
2betamolasu
3zetadolahu

需求

查询所有ID、name列的数据,仅当city列值为'dola'时返回cat列数据,否则该列留空。

解决方案

通用SQL写法(支持所有主流数据库)

使用CASE表达式(SQL标准语法)实现条件判断:

SELECT 
    ID,
    name,
    CASE WHEN city = 'dola' THEN cat ELSE '' END AS cat
FROM 
    你的表名;

逻辑说明:当city字段值等于'dola'时,返回cat字段的内容;否则返回空字符串。

MySQL/MariaDB 简化写法

可以使用MySQL专属的IF函数简化代码:

SELECT 
    ID,
    name,
    IF(city = 'dola', cat, '') AS cat
FROM 
    你的表名;

逻辑与CASE表达式完全一致,写法更简洁。

执行结果

IDnamecat
1alphadu
2beta
3zetahu

内容的提问来源于stack exchange,提问作者Lutter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 07:54:22