1、truncate和delete有什么区别?
1)DELETE若没有where,就是删除整张表中数据 2)都是对数据操作,并不对表的结构进行操作 3)DROP :对表的结构操作
4)用法:truncate: truncate table emp;
Delete:表的数据一条条的删除,慢 delete from emp where name =”zhangsan”; Drop: drop table emp;
5)Truncate没有回滚事物
2、说出以下聚合函数的含义?(如AVG/SUM/MAX/MIN/COUNT/COUNT(*))
AVG:返回指定组中的平均数,会忽略NULL值,nvl(sal,0) SUM:返回指定组中数据的和,会忽略NULL值 Count(id) :返回指定的组条数,忽略NUll Count(*) :返回指定组中总条数,包括NULL
3、final与finally的区别?
Finalize:垃圾回收机制中的一个方法
4、String、StringBuffer与StringBuilder之间区别?
5、Java中PreparedStatement和Statement的用法区别?
1)PreparedStatement继承Statement,并且继承了所有的方法
2)代码刻度和维护性、安全性
3)PreparedStatement预防SQL注入
三、编写SQL语句。
1、创建一张客户表(cust),包含以下信息:
客户号(custno),姓名(custna),出生年月(birdt),年龄(oldyer), 性别(gender),身份证号码(idftno),联系电话(tel) 其中客户号是主键
--创建一张客户表cust CREATE TABLE cust(
custno number(10) primary key, custna varchar2(20), birdt date, oldyer number(4), gender varchar2(1), idftno varchar2(20), tel varchar2(20) );
2、向客户表添加如下信息: 客户号 1 2
insert into cust
(custno,custna,birdt,gender,tel,idftno,oldyer) values
(1,'张三',to_date('1985-12','YYYY-MM'),'M', '123456','12345678',18 )
姓名 张三 李四 出生年月 性别 1985-12 1980-1 男 男 联系电话 身份证号 123456 119 32345678 37654321 年龄 19 20 insert into cust
(custno,custna,birdt,gender,tel,idftno,oldyer) values
(2,'李四',to_date('1999-02','YYYY-MM'),'男', '119','45678321',22 )
-- 将gender字段修改
alter table cust modify (gender varchar2(3))
3、修改客户表的数据,将电话号码11开头的客户的身份证号改为“1114”
--查询下电话为11开头
select * from cust where tel like '%11%'
update cust set idftno = '114' where tel like '11%'
4、删除姓李、性别为男的客户信息
delete from cust where custna like '李%' and gender like '男'
5、查看客户表的数据,将所有年龄小于25岁的,性别为“男”的,客户的姓名和客户号示出来
select custna,custno from cust where gender like '男' and oldyer<25
6、查询客户表的数据,查询所有信息,列出前25%的记录
select c.*,rownum rn from cust c where rownum < ( select count(*)*0.25 from cust )
7、查询出所有客户的姓名,性别,按照出生年月降序排序 Select * from cust order by birdt desc 8、按照性别分组查询不同性别的平均年龄
Select gender,avg(aidyer) from cust group by gender
因篇幅问题不能全部显示,请点此查看更多更全内容