这是一个令我难以置信几天的问题,我搜索和搜索但找不到任何令人信服的答案!
简单的问题,为什么限制在SQL中有2个外部联接,即使使用不同的列也在同一个表上,检查下面的查询以便更好地理解.我也可以使用嵌套的子查询或ANSI连接来克服它们,但是为什么它甚至首先使用(+)运算符进行限制!
在这个问题中,我指的是错误:
ORA-01417:一个表可以外部连接到至多另一个表
我想问的是为什么允许这样做:
select * from
a, b, c
where a.a1 = b.b1
and a.a2 = c.c1
Run Code Online (Sandbox Code Playgroud)
为什么不允许这样做:
select * from
a, b, c
where a.a1(+) = b.b1
and a.a2(+) = c.c1
Run Code Online (Sandbox Code Playgroud)
请单独保留ANSI和嵌套子查询
假设我有一个M元素数组,所有数字,负数或正数或零.
任何人都可以建议一种算法N从数组中选择元素,这样这些N元素的总和是最小的正数吗?
以此数组为例:
-1000,-700,-400,-200,-100,-50,10,100,300,600,800,1200
Run Code Online (Sandbox Code Playgroud)
现在我必须选择任何5个元素,使得它们的总和是可能的最小正数.
arrays algorithm mathematical-optimization selection data-structures