【基础知识】Oracle的一些基本操作和

来源:互联网 发布:淘宝九块九包邮怎么弄 编辑:程序博客网 时间:2024/05/21 16:55

 oracle数据库的基本操作知识

开篇语:红色部分为关键字或格式,最好不要修改,黑色部分可以修改;

1、修改表格中显示的列宽:

col number format 9999;


2、提交(防止数据丢失,类似ctrl+S保存文档等);

commit;


3、修改表格的名称:

rename  旧表名 to  新表名;


4、a、插入数据:

insert into表名   (  列名1,列名2,列名3...  ) values(  列值1,列值2,列值3... );


   b、多行插入:

insert all

into 表名 values(值1,值2,值3...)

into 表名2values(值4,值5...)

select * from dual;


注:这里的dual是oracle 中自带的,最简单的表,可以理解为万用表格,可以作各种特殊用途;

5、删除列:

delete from 表名 where 条件;


注:这里的删除是第三个SQL语句;

6、update 表名 set (列名=新值) where  条件;


7、模糊查询:

select * from 表名 where 列名 like ‘ xiao%  ’  order by 列名 desc


注:order by 列名  是排序语句,按照某个列的顺序排列,加了desc表示降序排列,去掉格式语句末尾的desc,就是顺序排列;蓝色部分可以去掉;

8、查询某个日期区间段的列:

select * from 列名  where  to_char(列名,'YYYY-MM-DD')between ' 2017-1-1 '  and ' 2017-3-1 ';


注:1)日期格式的关键字是date,日期有好多格式,你要在日期相关的列名后规定下时间按照什么规律输出,比如例题中的   '  YYYY-MM-DD  '   就是年月日格式,Y对应year,M对应month,D对应day;

        2)to_char是将时间格式转化为字符串格式;(to_date是转化为日期格式)

9、胶水:concat,将字符粘黏在一起;

 select  concat (需要粘贴的列1,需要粘贴的列2) from  表格1,表格2    where 条件;


10、统计列中具体值得最长的字符并输出;

select max(length(列名)) from  表格


注:length()函数是用来求长度的;max()函数是用来求最大值的;

如果要输入其对应的该列的另一个列的值,可以用下面方法,稍微绕一下:


11、查询某个时间段的列信息;

select * from 表名 where to_date(定义为date格式的列名) between 时间1 and 时间2;


12、日期:月(month)相关操作 add_months(sysdate,n);

select * from 表名 where 列名 between add_months(sysdate,-1) and sysdate;


注:这里add_months(sysdate,n)是一个关于月份处理的函数,添加月份处理函数,sysdate是当前系统时间,而

n是月份的移动量,n=1表示在当前系统时间的月份上加一个月,n=-1表示在当前月份基础上前移一个月;

13、统计和:count(列名

select count ( * ) from表名;


 注:这里的星号  *  指的是所有,可以理解为all;这个语句的意思是计算表名下面有多少列;

14、求和:sum( 列名

select sum(列名from  表名   where   条件;


注:类比Excel里面的求和sum;

15、平均数:avg(列名

select    avg (列名) from    表名    where   条件;





全篇结束;

system.exit(0);

欢迎随时交流~~~~

                                                                                                                            陶洲川

                                                                                                                     2017年3月1日

                                                                                                                      1491527416@qq.com

0 0