oracle数据库多表嵌套,Oracle数据库表嵌套查询问题

Oracle数据库表嵌套查询问题

目前有两张表

type

--------------------

ID |   Name

--------------------

1  |   林地

--------------------

2  |   耕地

--------------------

ground

ID |   oldtype  | nowtype

----------------------------------------

1  |        1       |    2

----------------------------------------

2  |        2       |    1

----------------------------------------

目标是生成以下视图

sv_GroundType

----------------------------------------

ID |   oldtype |   nowtype

----------------------------------------

1  |     林地     |      耕地

----------------------------------------

2  |     耕地     |      林地

----------------------------------------

语句:

create or replace view sv_GroundType as

select oldid ID,oldname oldtype,nowname nowtype

from

(select a.id oldid,b.name oldtype from ground a,type b where a.oldtype=b.id),

(select c.id newid,d.name nowname from ground c,type d where a.nowtype=b.id)

where oldid = newid

不知道如何精确描述这样的问题,先这样记下来吧,希望能对看到的人有所帮助。

更高级点的写法:

SELECT

Type_1.TypeName,

Type.TypeName,

Ground.ID,

Ground.LYR_SEQ,

Layer.LayerName,

from

Layer

RIGHT JOIN

(((Ground

INNER JOIN

Ground AS Ground_1

ON Ground.ID = Ground_1.ID)

INNER JOIN Type

ON Gr

相关文档:

SQL*PLus>   desc   emp;

名称                                                                   &nbs ......

Oracle函数和mysql函数比较

1.       Oracle中的to_number()转换成数字;

Oracle> Select to_number(‘123’) from dual;  -----         123;

&nbs ......

MySQL Data Type

Oracle Data Type

BIGINT

NUMBER(19, 0)

BIT

RAW

BLOB

BLOB, RAW

CHAR

CHAR

DATE

DATE

DATETIME

DATE

DECIMAL

FLOAT (24)

DOUBLE

FLOAT (24)

DOUBLE PRECISION

FLOAT (24)

ENUM

VARCHAR2

FLOAT

FLOAT

INT

NUMBER(10, 0)

INTEGER

NUMBER(10, 0)

LONGBLOB

BLOB, RAW

LONGTEX ......

mysql 大对象存取:

类型一般应该用mediumblod,

blob只能存2的16次方个byte,

mediumblod是24次方,

一般来说够用了.longblob是32次方有些大.

MYSQL默认配置只能存1M大小的文件,要修改配置,WIN版本的在mysql.ini文件中

修改max_allowed_packet,net_buffer_length等几个参数,或直接SET GLOBAL va ......

只是sqlserver 提供的远程数据访问函数;  在本地sqlserver 中取外部数据源数据时候可用;

对连接本地 oracle 操作远程 oracle 不能使用; 测试: pl/sql 中使用:

select * from openrowset(................); 无效!!!!!!!!!!!!!!

在oracle 中需要访问远程数据,需要建立一连接远程oracle 的 dblink ;

再用如下方 ......