在 MonetDB 中的 case 语句中绑定变量

Posted

技术标签:

【中文标题】在 MonetDB 中的 case 语句中绑定变量【英文标题】:Bind variables in case statement in MonetDB 【发布时间】:2013-07-08 16:20:20 【问题描述】:

在 MonetDB 中使用绑定变量时,我似乎遇到了一个奇怪的限制。如果我通过说 where field=$var 以正常方式使用绑定变量,那么它可以工作。但在这种情况下不是:

这是一个示例:

select case when $Brand = 'All'

这是错误:

EXEC: wrong type for argument 1 of prepared statement: char, expected char

通过 Pentaho 使用最新版本的 jdbc 驱动程序 (2.9)。

【问题讨论】:

【参考方案1】:

转换为 char 也不起作用。

但是,将双方都转换为 Varchar 确实有效,即:

cast($Brand as varchar(100)) = cast('All' as varchar(100))

所以我猜 char 在 MonetDB 中有点时髦

【讨论】:

以上是关于在 MonetDB 中的 case 语句中绑定变量的主要内容,如果未能解决你的问题,请参考以下文章

case语句中的变量赋值(bash)[重复]

switch-case语句中的多个变量[重复]

monetdblite:是不是可以配置“monetdb_query”来运行多个语句?

在 case 语句中更新值并设置局部变量

如何告诉 MonetDB 数据在表中排序?

Java中的switch语句怎么使用