sql - SQL SELECT 取决于值
问题描述
我需要建议或想法如何解决我的问题。我根据几个连接进行了选择。所选值之一是 ex。CA.PADDING_ZERO_FLAG
这是'0'或'1'。
基于此,我想在 select 语句中获取其他值。
伪代码:
Select if(CA.PADDING_ZERO_FLAG = '1') then LPAD(ZR.START_ZIP_CODE, 5, '0'),
LPAD(ZR.END_ZIP_CODE, 5, '0') else ZR.START_ZIP_CODE, ZR.END_ZIP_CODE
有可能吗?
提前致谢
解决方案
Case 语句将为此工作。
SELECT
CASE
WHEN CA.PADDING_ZERO_FLAG = '1'
THEN
LPAD(ZR.START_ZIP_CODE, 5, '0')
ELSE
ZR.START_ZIP_CODE
END as 'START_ZIP_CODE',
CASE
WHEN CA.PADDING_ZERO_FLAG = '1'
THEN
LPAD(ZR.END_ZIP_CODE, 5,'0')
ELSE
ZR.END_ZIP_CODE
END as 'END_ZIP_CODE'
推荐阅读
- javascript - 在我的本地存储 Jquery 代码上添加了新字段
- html - 在 Angular2 从 JSON 生成复杂的 html
- java - 收到 Hikari 池初始化错误
- python-3.x - 如何用装饰器包装 func.__code__.co_filename?
- reactjs - 使用 fetch 循环 - React
- tcl - Tcl exec 的 2>@stdout 是否像 2>@1 一样工作?
- azure - Terraform:将整个资源组移动到新的 Azure 订阅
- java - 检查Java中的两个数字之间是否有3个值
- r - ggplot2 barplot 条颜色无法正确更改
- powershell - 使用 PowerShell 将 Get Thumbnail API 转换为 base64(来自 Microsoft Computer Vision Get Thumbnail API)