Excel 如何改进此msquery解决方案?

Excel 如何改进此msquery解决方案?,excel,syntax,ms-query,Excel,Syntax,Ms Query,使用Excel xlsx文件,从其他地方导出50k+行。 为了在msquery中处理空值,我尝试了CASE语句,并尝试了我能想象到的每一种组合(我很确定这不是语法的问题),这些都是非常简单的语句 我将连接尺寸测量以显示标签的字符串。例如 'H: '+xtract.Height+' x W:'+xtract.Width AS [Dimensions] null在我尝试过的每种类型的CASE语句中都会导致失败,但都不起作用 令我惊讶的是,我可以将“&”用作连接符,而不是可以在Excel公式中使用

使用Excel xlsx文件,从其他地方导出50k+行。 为了在msquery中处理空值,我尝试了CASE语句,并尝试了我能想象到的每一种组合(我很确定这不是语法的问题),这些都是非常简单的语句

我将连接尺寸测量以显示标签的字符串。例如

'H: '+xtract.Height+' x  W:'+xtract.Width AS [Dimensions]
null在我尝试过的每种类型的CASE语句中都会导致失败,但都不起作用

令我惊讶的是,我可以将“&”用作连接符,而不是可以在Excel公式中使用的“+”,并在空字符串前加前缀,以使CSTR函数在此处工作

'H: '+CStr(''&xtract.Height+' x  W:'+CStr(''&xtract.Width ) AS [Dimensions]  
如果这都是传统的SQl语法,那就相当直截了当了,但MSQUERY似乎有特殊的语法,让我可以用这种方式解决这个问题

这是一项不常见的任务,因此我不太关心性能。 这很有效

因此,我在继续前进和花时间坚持一个案例陈述之间左右为难,而我永远无法获得正确的语法


这种方法还有其他问题吗?

尝试使用ISNULL函数


H:'+ISNULL(xtract.Height,)+xw:'+ISNULL(xtract.Width,)一样作为[Dimensions]

谢谢。我以前试过,现在又试过。我收到错误[4200][Microsoft][ODBC Excel驱动程序]查询表达式中函数使用的参数数目错误。。。。我很确定这是特定于使用excel作为数据源的,因此函数并非如预期的那样都可用。我猜传统的SQL语法不适用于使用excel文件作为源的MS Query,因为它有不同的驱动程序和版本,具体取决于所述的excel文件类型。由于它使用不同的驱动程序,我想我有不同的规则集和与之相关的查询语法。是的,这就是为什么这样做似乎是错误的。但它是用于临时数据交换的,所以我现在可以接受它。谢谢你的意见