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

如何从Shipfile表中提取发票及对应唯一非空快递追踪号

解决方案:合并多列非空追踪号到单一列

这问题很常见,用标准SQL里的COALESCE()函数就能完美解决——它会依次检查传入的列/值,返回第一个非空的结果,刚好匹配你的需求:每条记录里只有一个快递商列有有效追踪号,其余为空,这个函数能精准提取到那个值。

直接用这条查询语句即可:

SELECT 
    Invoice,
    COALESCE(FedEx, UPS, DHL) AS Tracking
FROM shipfile;

效果验证

我们用你给出的示例数据来测试:

转换前的原始数据:

InvoiceFedExUPSDHL
1F123
2U321
3D746

执行上述SQL后,得到的结果完全符合你的预期:

转换后的目标结果:

InvoiceTracking
1F123
2U321
3D746

补充说明

COALESCE()是标准SQL函数,几乎所有主流数据库(MySQL、PostgreSQL、SQL Server等)都支持,兼容性拉满。如果遇到小众数据库,也可以找对应替代函数,但COALESCE()肯定是最通用的选择。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 18:34:04