ORACLE SQL语句总结2

1 gourp by

select salary from stu_tbl group by S_SEX

GROUP BY 用不好的话会提示一个错误。叫做not group by expression

groupby 还可以跟一个操作,having 这个限制条件真是让我不知道做什么!所以先放弃。

后来知道了,就是group by having count(*)>10 来筛选分组的信息。

2 如何使用 connect by prior 进行递归查询。 

SELECT a.*, a.LEVEL

  FROM stu_tbl

  CONNECT BY PRIOR sno = master_id;

这里可以看到 从sno=5 的记录开始,下一条显示的记录的sno = 当前记录的master_id

以此类推,递归显示。 很容易,无论是自顶向下,自底向上。只要记住 prior后面跟着的是当前的master_id。

可以在递归显示的过程中,加一个where 条件来剪枝。

3 找到最新日期

面对这样的表,为了找到最新的日期。

select name,to_char(tran_date,'yyyy.mm.dd hh24:mi:ss') tran_date

      from abc t2 where tran_date in (

       select max(t1.tran_date) from abc t1 where

    t1.name=t2.name and t1.mod_no=t2.mod_no )

用这样的语句便可以找到最新的日期。

5创建新表结构

oracle 创建表结构并不是简单的声明变量然后说明变量的属性。

create table  deptment
(
deptno  number(5) primary key,
dname    varchar2(20),
loc      varchar2(30)
)
  PCTFREE   10
  PCTUSED   70
  STORAGE
             (
               INITIAL   50K
               NEXT       50k
               MAXEXTentS  10
              )
disable  primary key;

有三个字段,是特殊的。PCTFREE, PCTUSED, STORAGE

PCTFREE 是个什么意思呢?

回答:PCTFREE存储参数告诉oracle什么时候应该将数据块从对象的空闲列表中移出。ORACLE的默认参数是PCTFREE=10;

也就是说,一旦一个INSERT操作使得数据块的90%被使用,这个数据块就从空闲列表(free list)中移出。

PCTUSED 是个什么意思 ?

回答:存储参数告诉ORACLE什么时候将以前满的数据块加到空闲列表中。当记录从数据表中删除时。

数据库的数据块就有空间接受新的记录,但只有当填充的空间降到PCTUSED值以下时!

该数据块才被连接到空闲列表中,才可以往其中插入数据。PCTUSED的默认值是PCTUSED=40。

STORAGE 是个什么意思?

INITIAL 5(数据块) 2(数据块) 操作系统限定 分配给Segment的第一个Extent的大小,以字节为单位,这个参数不能在alter语句中改变,如果指定的值小于最小值,则按最小值创建。
NEXT 5(数据块) 1(数据块) 操作系统限定 第二个Extent的大小等于NEXT的初值,以后的NEXT值=前一NEXT大小乘以(1+PCTINCREASE/100),如果指定的值小于最小值,则按最小值创建。
如果在alter语句中改变NEXT的值,则下一个分配的Extent将具有指定的大小,而不管上一次分配的Extent大小和PCTINCREASE参数值。
MINEXTENTS 1(Extent)
回滚段为2个Extent
1(Extent)
回滚段为2个Extent
操作系统限定 Segment第一次创建时分配的Extent数量

这个字段的意思,有许多属性可以加。

三个INITIAL NEXT MINEXTENTS

6假如只想查询某一日期

如果是查询某个时间,比如只想知道8月份有谁有档期。需要用to_char(xx,'MM')的方法。

to_char(tran_date,'yyyy.mm.dd hh24:mi:ss')关于时间就是这样。

yyyy 代表年,mm代表月,dd代表日,HH24代表小时,MI代表分钟,SS代表秒。

7 decode 的用法有点类似判断

 

原文地址:https://www.cnblogs.com/zzzPark/p/7278419.html