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)