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 ;
再用如下方 ......