为啥在 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?的主要内容,如果未能解决你的问题,请参考以下文章