觉得浮夸了四年,漠然发现原来是浮躁了四年!

Oracle:命令方式操作表数据

一.插入数据

INSERT语句:

INSERT INTO<表名>[(<列名1>,<列名2>...)]

       VALUES(<列值1>,<列值2>...)

PS:

1 VALUES中描述的值可以是一个常量、变量、或者一个表达式。

2 字符串类型的字段必须用单引号括起来。

3 字符串转换函数TO_DATE把字符段串形式的日期型数据转换成Oracle规定的合法日期型数据。

4 如果列值为空,必须置为NULL。

5 如果列值指定为该列的默认值,用DEFAULT。

用法:

INSERT INTO XSB(学号,姓名,出生日期,总学分)

       VALUES('101101','heat nan',TO_DATE('19911002','YYYYMMDD'),50);

二:删除记录

DELETE语句

DELETE FROM<表名>

     [WHERE<条件表达式>]

PS:

1 如果省略WHERE字句,表示删除所有行。

TRUNCATE TABLE<表名>

删除表中所有数据,释放表空间,不能恢复,谨慎使用。

 

三:查询语句

 

1.查询学生总成绩的前十名

cjb  成绩表      zcj  总成绩

select * from cjb where rownum<11 order by zcj

 

2.查询图书馆门禁  每天的人流量

相关字段   sksj  刷卡时间  

门禁表      tb_ykt_mjmx_tsg

 

 

四  两张表间根据相同字段更新数据

根据学生的身份证号码更新学生的入学成绩       向表a中添加学生成绩   成绩位于表b中   表a和b有相同的字段身份整号(ID)

update (select  a.cj,b.score  from a,b  where a.id=b.id)  set cj=score;

以上需要注意的是,当a根据b的id添加新的字段内容时,需要保证字段b的id为主键,否则会报错。如果b不为主键,有可能会出现b中的ID对表a有一对多的情况。

因此要设置b的id为主键。

 

 五 删除一张表中重复的记录

http://www.cnblogs.com/252e/archive/2012/09/13/2682817.html

 

六 sql查询多个表字段

 

eg:从a和b表中查询符合条件的字段

select a.id,b.name  from a inner join b on (a.id=b.id and a.name=b.name)

 

posted @ 2013-12-07 11:04  heat nan  阅读(245)  评论(0编辑  收藏  举报