小编Ser*_*rge的帖子

与 Oracle 的 in join on 子句没有区别

我有一个使用左外连接构造的查询,如下所示:

left outer JOIN GA_LOAN GA 
  ON LOAN.LOAN_TYPE = GA.LOAN_TYP
    AND LOAN.DT = GA.GUARANTY_DT
    AND LOAN.FFEL_DUP_ID = GA.SEP_LOAN_IND
    AND LOAN.SCH_BR_CODE = GA.ORIG_SCHL_CD
    AND STU.CURR_SSN = GA.STU_SSN
    AND STU.DOB = GA.DOB
    and stu.curr_fst = ga.stu_first_nam
  --and (plus_bor.curr_ssn is not distinct from ga.plus_brwr_ssn )
Run Code Online (Sandbox Code Playgroud)

当我添加注释掉的行时,出现以下错误。

ORA-00908: missing NULL keyword
00908. 00000 -  "missing NULL keyword"
*Cause:    
*Action:
Run Code Online (Sandbox Code Playgroud)

与 DB2 中这种结构的正常工作没有什么不同,但 Oracle 给我带来了问题。有什么建议么?

is not distinct from如果我用 a替换,我不会收到任何错误=,但这在逻辑上是不一样的。

is not distinct from如果两个值都是 ,则 with 给出匹配项null,而 as= …

sql oracle distinct oracle11g

5
推荐指数
1
解决办法
1268
查看次数

用空列对管道定界文件进行排序

我在使用排序时遇到问题,我认为这是由于我要排序的列之前有一个空列。我对文件进行了排序sort -n -t'|' -k4 testme -o testedsort,这是testedsort的输出

N|N||+006422931|+000359029|OVERLAY 
N|N|A|+000000020|+000000000|580    
N|N|A|+000000020|+000000020|705    
N|N|A|+000008035|+000000000|800    
N|N|A|+000009701|+000000000|723    
N|N|A.|+000009701|+001569434|742   
N|N|A|+000009701|+001569434|742    
N|N|A|+000013723|+000000000|DLORGN 
N|N|A|+000020963|+000000020|729    
N|N|A|+000022110|+004066830|GRANT  
Run Code Online (Sandbox Code Playgroud)

看起来,除了第一条记录外,其他所有内容都还不错,而唯一的例外是我们有一个空列。有没有人看过这个,关于如何解决这个有什么建议吗?

unix linux sorting

4
推荐指数
1
解决办法
4206
查看次数

哪里不存在导致插入db2的问题

我有这样的查询:

insert into mySchema.myTable (award_id, cust_id) values ('blahblah', 12345)
where not exists (select * from mySchema.myOtherTable where cust_id = 12345);
Run Code Online (Sandbox Code Playgroud)

我收到错误:

ILLEGAL USE OF KEYWORD WHERE.  TOKEN FOR <END-OF-STATEMENT> NOT ATOMIC WAS EXPECTED SQL 
Code: -199, SQL State: 42601
Run Code Online (Sandbox Code Playgroud)

我已经看到一堆类似的查询被接受作为答案,我不明白为什么它会发现这个问题.

db2

3
推荐指数
1
解决办法
9990
查看次数

传递表名作为plsql参数

我想编写一个函数来返回一个表的行计数,该表的名称作为变量传入.这是我的代码:

create or replace function get_table_count (table_name IN varchar2)
  return number
is
  tbl_nm varchar(100) := table_name;
  table_count number;
begin
  select count(*)
  into table_count
  from tbl_nm;
  dbms_output.put_line(table_count);
  return table_count;
end;
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

FUNCTION GET_TABLE_COUNT compiled
Errors: check compiler log
Error(7,5): PL/SQL: SQL Statement ignored
Error(9,8): PL/SQL: ORA-00942: table or view does not exist
Run Code Online (Sandbox Code Playgroud)

我理解这tbl_nm被解释为一个价值而不是一个参考,我不知道如何逃避这一点.

oracle plsql oracle11g

3
推荐指数
1
解决办法
9407
查看次数

接口类名称中的标签<>

我正在尝试学习Spring Batch,本书提供了示例接口类,但是命名约定让我失望.

public interface ItemProcessor<I,O> {
O process(I item) throws Exception;
Run Code Online (Sandbox Code Playgroud)

}

我以前从未见过类名中的参数.它们是出于实际目的还是只是作为指导?如果类名被更改,以下代码会有何不同?

public interface ItemProcessor {
O process(I item) throws Exception;
Run Code Online (Sandbox Code Playgroud)

}

java generics spring spring-batch

0
推荐指数
1
解决办法
102
查看次数

在不知道方法调用参数的情况下使用嘲笑

我正在Junit测试一个类,并且不得不创建一些Mockito模拟对象。我感兴趣的代码行是

Mockito.when(emailer.sendEmail(INPUT GOES HERE)).thenReturn(true);
Run Code Online (Sandbox Code Playgroud)

emailer的sendEmail()方法有两个参数,我不确定它们是什么。是否有某种通配符可用于替换参数而不知道它们将是什么?

java junit mockito

0
推荐指数
1
解决办法
156
查看次数

标签 统计

java ×2

oracle ×2

oracle11g ×2

db2 ×1

distinct ×1

generics ×1

junit ×1

linux ×1

mockito ×1

plsql ×1

sorting ×1

spring ×1

spring-batch ×1

sql ×1

unix ×1