Db2 SQL查询特有的错误



我正在使用Hacker Rank充分学习SQL以通过编码面试。

我在使用DB2运行在线编译器时注意到一个错误。在Oracle、MS、MS、SQL SERVER或MySQL中没有错误产生。

下面的代码是上述问题的解决方案。

SELECT * 
FROM City 
WHERE Countrycode = 'JPN';

除了在Db2中,它在所有地方都返回以下内容:

1613 Neyagawa JPN Osaka 257315 
1630 Ageo JPN Saitama 209442 
1661 Sayama JPN Saitama 162472 
1681 Omuta JPN Fukuoka 142889 
1739 Tokuyama JPN Yamaguchi 107078

但是由于使用DB2的某些原因,它返回解决方案,然后返回一条错误消息:

1613 Neyagawa JPN Osaka 257315 
1630 Ageo JPN Saitama 209442 
1661 Sayama JPN Saitama 162472 
1681 Omuta JPN Fukuoka 142889 
1739 Tokuyama JPN Yamaguchi 107078 

DB21034E该命令作为SQL语句处理,因为它不是一个有效的命令行处理器命令。在SQL处理过程中,它返回:
SQL0104N一个意外的令牌"database"被发现在"k"行后面。*/uncatalog"。预期的令牌可能包括:"JOIN " joined_table "。
SQLSTATE = 42601

Db2的使用有多广泛?我怎样才能避免这个错误?

这个错误提示当数据库不是编目。Db2需要catalog才能得到正确的答案。检查数据库是否在本地目录中编目,并运行程序。hackerrank我们不能检查db所以它给错误。

我只是做了完全相同的事情,结果我只需要在行末添加';',正如指令所述。来自python,我忘了

你所能做的就是删除黑客排名底部的评论,这对我很有帮助。

最新更新