| 
                        
                             | 
                    有胆有识的砖头 · QT--初识 - 常瑟 - 博客园· 1 年前 · | 
| 
                        
                             | 
                    痴情的铁板烧 · python ...· 2 年前 · | 
| 
                        
                             | 
                    腼腆的烈马 · CSS 中的颜色、背景和剪切 - 掘金· 2 年前 · | 
| 
                        
                             | 
                    酒量小的冰棍 · sql父级节点显示所有子节点的数量和金额的合计· 2 年前 · | 
| 
                        
                             | 
                    强健的鸭蛋 · springboot批处理实例报错FlatF ...· 2 年前 · | 
我有一个包含'NULL‘值的表,这些值的类型是'Datetime’。现在我必须将它们转换为空字符串,但是当我使用convert函数时
ISNULL( [Accrued Out of Default] ,'' )
                   
                    
                     
                      
                       
                        
                         
                          
                           
                            
                             
                              
                               
                                
                                 
                                
                               
                              
                             
                            
                           
                          
                         
                        
                       
                      
                     
                    
                   
                  这里默认发生的是datetime类型,它将null改为'1900-01-01 00:00:00.000‘而不是空的
然后,我尝试将它们转换为varchar并应用相同的
ISNULL(CONVERT(varchar(50),  [Amort Into Default] ),'')
                   
                    
                     
                      
                       
                        
                         
                          
                           
                            
                             
                              
                               
                                
                                 
                                
                               
                              
                             
                            
                           
                          
                         
                        
                       
                      
                     
                    
                   
                  现在我可以转换为空字符串,但是现在这些datetime被转换为我在datetime中需要的字符串,所以我尝试转换,但它们都不起作用。
CONVERT(Datetime,'ISNULL(CONVERT(varchar(50),  [Amort Into Default] ),'')',120)
                   
                    
                     
                      
                       
                        
                         
                          
                           
                            
                             
                              
                               
                                
                                 
                                
                               
                              
                             
                            
                           
                          
                         
                        
                       
                      
                     
                    
                   
                  这会产生错误。
有没有可能解决这个问题。
> **Solution Hi someone answered this to do as.
>      ISNULL(CONVERT(varchar(50),  [Amort Into Default] ,120),'') and it works  I dont know why .
                   
                    
                     
                      
                       
                        
                         
                          
                           
                            
                             
                              
                               
                                
                                 
                                
                               
                              
                             
                            
                           
                          
                         
                        
                       
                      
                     
                    
                   
                  
    
**
发布于 2013-11-12 21:50:17
CASE和CAST应该可以工作:
CASE WHEN mycol IS NULL THEN '' ELSE CONVERT(varchar(50), mycol, 121) END
                       
                        
                         
                          
                           
                            
                             
                              
                               
                                
                                 
                                  
                                   
                                    
                                     
                                      
                                     
                                    
                                   
                                  
                                 
                                
                               
                              
                             
                            
                           
                          
                         
                        
                       
                      
    
发布于 2013-11-12 22:55:09
使用ISNULL是我找到的绕过日期中NULL的最好方法:
ISNULL(CASE WHEN CONVERT(DATE, YOURDate) = '1900-01-01' THEN '' ELSE CONVERT(CHAR(10), YOURDate, 103) END, '') AS [YOUR Date]
                       
                        
                         
                          
                           
                            
                             
                              
                               
                                
                                 
                                  
                                   
                                    
                                     
                                      
                                       
                                        
                                       
                                      
                                     
                                    
                                   
                                  
                                 
                                
                               
                              
                             
                            
                           
                          
                         
                        
                       
                      
    
发布于 2015-06-12 18:29:17
declare @date datetime; set @date = null
--declare @date datetime; set @date = '2015-01-01'
select coalesce( convert( varchar(10), @date, 103 ), '')
                       
                        
                         
                          
                           
                            
                             
                              
                               
                                
                                 
                                  
                                   
                                    
                                     
                                      
                                       
                                        
                                         
                                          
                                         
                                        
                                       
                                      
                                     
                                    
                                   
                                  
                                 
                                
                               
                              
                             
                            
                           
                          
                         
                        
                       
                      https://stackoverflow.com/questions/19930599
复制相似问题
                                                
                                               
                                              
                                             
                                            
                                           
                                          
                                         
                                        
                                       
                                      
                                     
                                    
                                   
                                  
                                 
                                
                               
                              
                             
                            
                           扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
| 
                         | 
                    有胆有识的砖头 · QT--初识 - 常瑟 - 博客园 1 年前 | 
| 
                         | 
                    腼腆的烈马 · CSS 中的颜色、背景和剪切 - 掘金 2 年前 | 
| 
                         | 
                    酒量小的冰棍 · sql父级节点显示所有子节点的数量和金额的合计 2 年前 |