SQL 语句收集

1.查询数据库名和它的ID
select name,dbid from v$database;
2: 查询数据库参数
show parameter db;
3:查询数据库的实例名
select instance_name from v$instance;
4: 数据库域名
数据库安装结束后,如果要知道正在运行额数据库是否有域名以及数据库域名名称可以用
select value from v$parameter where name='db_domain'
show parameter domain
5:数据库服务名
如果数据库有域名,则数据库服务名就是全局数据库名,如果该数据库没有定义域名,则数据库服务名与数据库名相同
show parameter service_name

 

 

 

Oracle:

时间函数

createtime >to_date( ''2006-04-08 00:00:01','yyyy-mm-dd hh24:mi:ss') and createtime<to_date(''2006-04-08 10:00:01','yyyy-mm-dd hh24:mi:ss')或者

createtime >to_date( ''20060408000001','yyyymmddhh24miss') and

createtime<to_date(''20060408100001','yyyymmddhh24miss')

 

右连接: (右侧的所有记录均会被显示)

select a.studentno, a.studentname, b.classname  from students a, classes b   where a.classid(+) = b.classid;
(另外一种写法:
select a.studentno,a.studentname,b.classname   from students right join class on students.classid=class.classid

 

 

 

一个表中的Id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数。
------------------------------------------
select id, Count(*) from tb group by id having count(*)>1
select * from(select count(ID) as count from table group by ID)T where T.count>1



oracle 数据库只是查询

(9) 查询所有学生记录中成绩前十名的学生的学号、姓名、成绩、班级编号。

答:select stuno, sname, score, classno from (select * from student order by score desc) where rownum<=10;

 

Oracle  数据库 获取系统时间:  sysdate

 

 

Oracle 和 DB2 的一些区别

 

DB2中类似于ORACLE中的DUAL表的表

问题 在ORACLE中,数据库用户可以通过访问DUAL表获取一些系统信息,例如:
'SELECT SYSDATE FROM DUAL'命令返回当前系统日期
SQL> SELECT SYSDATE FROM DUAL;

SYSDATE
----------
18-12-03

'SELECT 1 + 1 FROM DUAL'执行数学运算
SQL> SELECT 1 + 1 FROM DUAL;

1+1
----------
2

'SELECT MY_SEQUENCE.NEXTVAL FROM DUAL'得到序列值
SQL> SELECT MY_SEQUENCE.NEXTVAL FROM DUAL;

NEXTVAL
----------
2

在DB2中,是否有对应的表?

解答 是的,DB2中存在一个对于的表:SYSIBM.SYSDUMMY1

用户可以通过访问这个表获取相应的信息。

例如:
'SELECT CURRENT DATE FROM SYSIBM.SYSDUMMY1' 命令返回当前系统日期

db2 => SELECT CURRENT DATE FROM SYSIBM.SYSDUMMY1

1
----------
2003-12-18

1 条记录已选择。

'SELECT 1+1 FROM SYSIBM.SYSDUMMY1' 执行数学运算
db2 => SELECT 1+1 FROM SYSIBM.SYSDUMMY1

1
-----------
          2

1 条记录已选择。

'SELECT NEXTVAL FOR MYSEQ FROM SYSIBM.SYSDUMMY1' 得到序列值
db2 => SELECT NEXTVAL FOR MYSEQ FROM SYSIBM.SYSDUMMY1

1
-----------
          3

1 条记录已选择。

此外,在DB2中,用户还可以用VALUES语句查询上面的值。

例如:
db2 => VALUES CURRENT DATE

1
----------
2003-12-18

1 条记录已选择

你可能感兴趣的:(sql)