oracle sql笔试题
一、 数据库 ORACLE
虽然这些题目都可以G到,但还是要考察一下您现在的常态水平,:)
T表:(字段:ID,NAME,ADDRESS,PHONE,LOGDATE)
E表:(字段:NAME,ADDRESS,PHONE)
1. 将表T中的字段LOGDATE中为2001-02-11的数据更新为2003-01-01,请写出相应的SQL语句。(该字段类型为日期类型)
2. 请写出将表T中NAME存在重复的记录都列出来的SQL语句(按NAME排序)
3. 请写出题目2中,只保留重复记录的第一条,删除其余记录的SQL语句(即使该表不存在重复记录)
4. 请写出将E表中的ADDRESS、PHONE更新到T表中的SQL语句(按NAME相同进行关联)
5. 请写出将T表中第3~5行数据列出来的SQL语句
1 update t
set logdate = to_date('2003-01-01','YYYY-MON-DD')
from logdate = to_date('2001-02-11','YYYY-MON-DD');
2 select *
from ( select name from t group by name order by desc)
3 delete from t
where t.rowid not in ( select max(rowid) from t group by name);
如果是检索所有不重复的行的话那么用
select * from t
where t.rowid not in ( select max(rowid) from t group by ID,NAME,ADDRESS,PHONE,LOGDATE)
4 update t
set t.address = ( select e.address from e,t where t.name = e.name),
t.phone = ( select e.phone from e,t where t.name = e.name);
5.select * from t where rownum <= 5
minus
select * from t where rownum < 3;
or
select * from ( select rownum as rn,t.* from t ) s
where s.rn between 3 and 5;
相关文档:
方法一:
SQL>create table aa(a number);
创建成功。
SQL> select * from aa;
A
--------
2
SQL>
SQL> insert all
2 into aa values(1)
3 into aa values(2)
4 select * from dual;
已创建2行。
SQL> commit;
提交完成。
SQL> select * from aa;
A
----------
2
1
2
方法二:
S ......
Oracle解锁与加锁(hr用户为例)
SQL*Plus: Release 9.2.0.4.0 - Production on Tue Jul 14 18:12:38 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> conn sys/sys as sysdba
Connected.
SQL> show user
USER is "SYS"
SQL> desc dba_users
Name &nbs ......
在一个表中,其中几个字段的值是一样的,按照这几个字段进行分组并合并数据。
表A id name role
1 张三 &nb ......
在一个基于TCP/IP协议的网络环境中,oracle数据服务器在一台计算机上,客户端在另外一台计算机上,客户端要连接到oracle服务器我们经常会输入:"C:\sqlplus scott/tiger@shanghai",这是oracle客户端连接服务器时使用的连接命令,其中sqlplus是oracle客户端程序,scott/tiger是登陆服 ......
原创 沉沦 2010-02-09
通过视图来访问数据,其优点是非常明显的。如可以起到数据保密、保证数据的逻辑独立性、简化查询操作等等。
但是,话说回来,SQL Server数据库中的视图并不是万能的,它跟表这个基本对象还是有重大的区别。在使用视图的时候,需要遵守四大限制。
限制条件一:视图 ......