1,数据库中的数据类型,double类型怎么写 number(7,2)
2,查询出不同状态的薪水总和
select sum(salary)s,status from UserTest group by status;
3,sql语言的分类:
数据库定义语言DDL,负责数据结构定义和数据库对象的定义,常用语句 create,alter,drop,truncate(清空表数据)
数据库操作语言DML,实现对数据表的基本操作,insert ,update,delete
数据库查询语句DQL,select
事务控制语句 commit,rollback,savepoint
4,sqlplus简介
我们通常所说的DML、DDL、DCL语句都是sql 语句 , 它们执行完后 , 都可以保存在一个被称为 sql buffer 的内存区域中 , 幵且叧能保存一条最近执行的sql语句 , 我们可以对保存在sql buffer 中的 sql 语句进行修改 , 然后再次执行。 除了sql语句 , 在sql*plus 中执行的其它语句我们称之为sql*plus 命令。它们执行完后 , 丌保存 在sql buffer 的内存区域中 , 它们一般用来对输出的结果进行格式化显示 , 以便于制作报表等。
5,dual虚表
oracle提供的用于操作函数的方式,属于sys用户,共享给所有用户使用
dual是单行单列的表,存放一个常量数据x
6,oracle关于日期的操作
--sysdate
select sysdate from dual;
--日期数据相减,得到两个日期的天数差,不足一天的用round处理
select hiredate,(sysdate-hiredate) from UserTest;
--计算员工入职多少个月
select round(months_between(sysdate,hiredate)) from UserTest;
--计算12个月之前的时间点
select add_months(sysdate,-12)from dual;
--计算本月的最后一天
select last_day(sysdate) from dual;
--将日期数据转换为字符数据
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
--将日期按指定格式输出
select to_char(sysdate,'year month dd day dy') from dual;
1) 常用日期格式
yyyy 四位数字年 如:2011
year 全拼的年 如:twenty eleven
month 全拼的月 如:november 或11月( 中文 )
mm 两位数字月 如:11
mon 简拼的月 如:nov( 中文没有简拼 )
dd 两位数字日
day 全拼的星期 如:tuesday
dy 简拼的星期 如:tue
am 上午/下午 如:am/pm
--case
select name,job,salary,
case job when 'job1' then salary*10
when 'job2' then salary*100
else salary
end new_salary
from UserTest
--decode
select name ,job,salary,
decode(job,'job1',salary*10,
'job2',salary*100,
'job3',salary*1000,
salary
)new_salary
from UserTest;
alter table stu_cou add constraint fk_1 foreign key (stuId) references Student1(id);