SQL条件列选择

迈克·帕拉

我正在运行一个简单的查询:

 Select "ID", "Original_ID" from table;

这让我明白了:

ID       |  Original_ID  
56917659 |  #56906230  Captain  
56781961 |  #56754164 Shipment Management   
56794542 |  #56620028 Team Member  
56655028 |  #50817965 Commercial Owner  
56258156 |  Process Expert                                         
55780912 |  Process Expert    

然后,我可以使用此:

select "ID", substr("Original_ID",2,8)as "Original_ID" from table;  


ID       | Original_ID  
56917659 |  56906230  
56781961 |  56754164  
56794542 |  56620028  
56655028 |  50817965  
56258156 |  rocess E  
55780912 |  rocess E  

我需要的是第三列“ True_ID”,将substr(“ Original_ID”,2,8)显示为“ True_ID”,但仅当“ Original_ID”以“#”开头时,才不只是在“ ID”中显示值。我正在使用dashDB。

rbr94

使用CASE WHEN来决定,如果第一个字符Original_ID#

select 
   ID
   , substr(Original_ID,2,8) as Original_ID
   , CASE WHEN substr(Original_ID, 1, 1) = '#' 
          THEN substr(Original_ID, 2, 8) 
          ELSE 'ID' END as True_ID
from table;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章