|
|
|
|
|
|
o****i 发帖数: 5 | 1 hehe, 姑且从这里开始吧 :)
本来想先说一个Oracle的好处,再说一个坏处,现在就颠倒一下吧
As I know, they don't.
For example, outer joins.
SQL92's outer join is like this:
SELECT ......
FROM A LEFT/RIGHT/FULL OUTER JOIN B ON (A.attr1 = B.attr2)
.........
In Oracle, you can do LEFT, RIGHT outer join like this
SELECT .....
FROM A, B
WHERE A.attr1(+) = B.attr2
or A.attr1 = B.attr2(+) for RIGHT OUTER join.
But you don't have general means to do FULL OUTER JOIN:
| B*****n 发帖数: 135 | 2
yeah right :) I was thinking of adding an "except outer join"
statement to my previous post. How often people use (full)
outer join anyways...
first, the device drivers are written by hardware vendors,
and have nothing to do with microsoft itself.
second, ain't there enough headaches resulting from M$'s crappy
support of hardwares? I once plugged in a new scanner to my boss'
computer and it caused his NT box to crash beyond rescue.
【在 o****i 的大作中提到】 : hehe, 姑且从这里开始吧 :) : 本来想先说一个Oracle的好处,再说一个坏处,现在就颠倒一下吧 : : As I know, they don't. : For example, outer joins. : SQL92's outer join is like this: : SELECT ...... : FROM A LEFT/RIGHT/FULL OUTER JOIN B ON (A.attr1 = B.attr2) : ......... : In Oracle, you can do LEFT, RIGHT outer join like this
| x********o 发帖数: 31 | 3 yes, you can not use A.attr1(+)=B.attr2(+);
but to my understanding,you can get a outer join using:
select distinct a.attr1,b.attr2 from a,b ;
【在 B*****n 的大作中提到】 : : yeah right :) I was thinking of adding an "except outer join" : statement to my previous post. How often people use (full) : outer join anyways... : first, the device drivers are written by hardware vendors, : and have nothing to do with microsoft itself. : second, ain't there enough headaches resulting from M$'s crappy : support of hardwares? I once plugged in a new scanner to my boss' : computer and it caused his NT box to crash beyond rescue.
| B*****n 发帖数: 135 | 4
that's different... a full outer join is an extension
of a simple join (add rows from both tables that were
filtered out in a simple join).
Your query on the other hand is doing a cross product (no join
conditions).
In oracle you can get a full outer join by UNION a
left and a right outer join.
For instance,
SQL> select * from AAA;
A B C
【在 x********o 的大作中提到】 : yes, you can not use A.attr1(+)=B.attr2(+); : but to my understanding,you can get a outer join using: : select distinct a.attr1,b.attr2 from a,b ;
| x********o 发帖数: 31 | 5 now i misunderstood your meaning le.
sorry.
【在 B*****n 的大作中提到】 : : that's different... a full outer join is an extension : of a simple join (add rows from both tables that were : filtered out in a simple join). : Your query on the other hand is doing a cross product (no join : conditions). : In oracle you can get a full outer join by UNION a : left and a right outer join. : For instance, : SQL> select * from AAA;
| w*****h 发帖数: 139 | 6 Why not compare the SQL-99 features in both database?
Thanks! | B*****n 发帖数: 135 | 7
i dont think anybody is supporting SQL99 at this time...
just announcements and chest-poundings.
【在 w*****h 的大作中提到】 : Why not compare the SQL-99 features in both database? : Thanks!
|
|
|
|
|
|
|