2015-09-24 81 views
-1

嘿,我想在Oracle sql load.sql文件中运行一个java程序。在运行程序时,我收到错误“ORA-00920:无效的关系运算符”。我认为问题出在我准备sql语句并尝试执行它的地方。我试图从两个sql表中获取信息:a2_loan和a2_customer。在a2_loan中,我想获取loan_num和contract_date,而在表a2_customer中,我想要名称和ird_num。我的发言是目前:Java Oracle Sql语句不能执行

 String sql = "select a.name, ird_num, loan_num, contract_date from a2_loan a, a2_customer b where a.name=b.name and b.name"; 

我认为这是在这里,问题在于,但如果它是在其他地方,请告诉我,我会休息复制我的代码!

我想会越来越a2_loan 的loan_num和contract_date出表的名称和ird_num出表的a2_customer

+3

“和b.name”是什么?它等于什么吗? – stdunbar

+2

这似乎与您在此处询问的问题相同:http://stackoverflow.com/questions/32752298/oracle-sql-statement-in-java至少,您的查询似乎被切断。 “和b.name”不是结束查询的有效方法。我猜你想要删除它,或者你想比较'b.name'。 –

+0

对不起,我还没有完全理解它。为了从表格中获取信息,我甚至需要将b.name与任何东西进行比较?或者我可以简单地拥有“SELECT name,ird_num,loan_num,contract_date FROM a2_loan,a2_customer”? – Val

回答

2

您的查询,稍微重新格式化,是

select a.name, ird_num, loan_num, contract_date 
    from a2_loan a, 
     a2_customer b 
    where a.name=b.name 
    and b.name 

的问题是在最后一行。 and b.name - 什么? and b.name = something?我们无法从您的查询中知道您要做什么,但在最后一行中,您必须将b.name与某件事进行比较,否则您需要摆脱整个最后一行。

祝你好运。