为啥在 DB2 上执行查询时会收到 SyntaxErrorException?

Posted

技术标签:

【中文标题】为啥在 DB2 上执行查询时会收到 SyntaxErrorException?【英文标题】:Why do I get an SyntaxErrorException while executing query on DB2?为什么在 DB2 上执行查询时会收到 SyntaxErrorException? 【发布时间】:2015-12-15 23:31:36 【问题描述】:

我尝试获取以 L 开头的国家/地区,但是当我尝试使用 WHERE COUNTRY INTO 'L%' 语句时出现错误。

String sql = "SELECT COUNTRY, LER "  
 + "FROM CENSUS.WORLDIMR "    
 + "WHERE COUNTRY INTO 'L%'"; 

我收到以下异常:

com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-199, SQLSTAT
E=42601, SQLERRMC=INTO;??( [ CONCAT || / MICROSECONDS MICROSECOND SECONDS SECOND
, DRIVER=4.18.74       

WHERE COUNTRY INTO 'L%' 肯定有问题。我对 COBOL 也有同样的问题。添加 29 倍 % 修复它,但这次不同。

【问题讨论】:

【参考方案1】:

我相信你需要使用 LIKE 运算符:

SELECT COUNTRY, LER FROM CENSUS.WORLDIMR WHERE COUNTRY LIKE 'L%';

【讨论】:

以上是关于为啥在 DB2 上执行查询时会收到 SyntaxErrorException?的主要内容,如果未能解决你的问题,请参考以下文章

优化 DB2 查询 - 为啥 bash“时间”输出保持不变?

为啥我什至没有使用左连接时会收到左外连接错误消息?

为啥我在尝试快速传递 segue 上的变量时会收到这些错误?

为啥我在函数内部调用时会收到“错误:无效的挂钩调用”?

为啥我在 Symfony 5 上使用 DateTime 约束时会收到“此值应该是字符串类型”?

为啥我在使用 Google Clas-s-room API 时会收到 404 错误?