SQL 内连接查询没有返回结果

标签 sql inner-join

我正在重构别人几年前编写的一个Java程序,无法与他们联系以找出有关SQL/数据库的任何信息,但是这个查询不起作用(当分别进行两个查询即可)。我知道在没有更多信息的情况下询问很烦人,但目前我没有太多选择。

"SELECT " + CLMHDR + ".POLBRC, "
+ CLMHDR + ".POLTYC, " + CLMHDR + ".POLNOC," + CLMHDR + ".CLTKYC, " 
+ POLHDR + ".INCPTP FROM "+ CLMHDR + 
"INNER JOIN " + POLHDR + " ON " + CLMHDR + ".CLTKYC = " + POLHDR+ ".CLTKYP" 
+ " WHERE POLNOC = "+ polnocSearch
+ " AND POLBRC = '" + polbrcSearch + "'"
+ " AND POLTYC = '" + poltycSearch + "'"
+ " AND DATRPC <= " + claimDate
+ " GROUP BY POLBRC, POLTYC, POLNOC, CLTKYC"

表 CMLHDR 和 POLHDR 确实包含其引用的列,并且 CLTKYC 和 CLTKYP 是每个表中的键。抱歉这些可怕的名字,我们也被困在角色扮演游戏中。

编辑: 起作用的是这样的:

"SELECT POLBRC, POLTYC, POLNOC, CLTKYC FROM "+ CLMHDR
+ " WHERE POLNOC = "+ polnocSearch
+ " AND POLBRC = '" + polbrcSeach + "'"
+ " AND POLTYC = '" + poltycSearch + "'"
+ " AND DATRPC <= " + claimDate
+ " GROUP BY POLBRC, POLTYC, POLNOC, CLTKYC"

接下来是:

"SELECT INCPTP, TRMTHP FROM "+ POLHDR   + " WHERE POLNOP = "+ polnocSearch
+ " AND POLBRP = '"+ polbrcSearch+ "' AND POLTYP = '"+ poltycSearch + "'"

但我真的更喜欢立即返回所有数据。

最佳答案

FROM 和 INNER JOIN 子句之间缺少空格:

FROM "+ CLMHDR +
"INNER JOIN

应该是这样的:

FROM "+ CLMHDR + 
" INNER JOIN

关于SQL 内连接查询没有返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14212710/

相关文章:

SQL Server - 按月对存档等记录进行分组

php - 无法在 PHP 中使用 Get 方法

mysql - 使用两个内连接表

mysql - 内部连接不正确的总和()

mySQL 多重 INNER JOIN

mysql - 如何减少显示输出所需的加载时间?

mysql - 使用 GROUP BY 时选择特定行

SQL Server - 有条件地连接到任何不为空的表

php - 没有重复记录的内部连接

sql-server - 什么时候应该使用 INNER -LOOP- JOIN 而不是 INNER JOIN