select *
from user_tables;
select column_name
from user_tab_columns
where table_name = 'table_name';
select column_name, data_type
from user_tab_columns
where table_name = 'table_name';
select *
from user_col_comments
where table_name = 'table_name';
comment on column 表名.列名 is '注释';
select *
from user_tab_comments;
select distinct job
from emp
where deptno = 20;
insert into table_name(列名1,列名2,列名3,)
values(值1,值2,值3);
insert into table_name
values(值1,值2,值3),(值1,值2,值3),······,(值1,值2,值3);
select *
from 表名
where 时间字段名 > to_date('20210414 16:00:00','yyyy/mm/dd hh24:mi:ss');
SELECT *
FROM 表名
WHERE TO_DATE(字段名, 'YYYY-MM-DD') > TO_DATE('20210601', 'YYYY-MM-DD')
select TO_Char(SysDate,'YYYY-MM-DD HH24:MI:SS')
from Dual;
select sysdate from dual;
select trunc(sysdate) from dual;
select trunc(sysdate ,'DD') from dual;
select trunc(sysdate,'d')+7 from dual;
select trunc(sysdate,'dy')+7 from dual;
select trunc(sysdate,'day')+7 from dual;
select trunc(sysdate,'q') from dual;
select trunc(sysdate,'month') from dual;
select trunc(sysdate ,'mm') from dual;
select trunc(sysdate,'year') from dual;
select trunc(sysdate ,'yyyy') from dual;
select trunc(sysdate ,'HH24') from dual;
select trunc(sysdate ,'MI') from dual;
select trunc(sysdate ,'CC') from dual;
select trunc(LAST_DAY(sysdate),'dd') from dual;
- .删除表中一行数据,删除操作作为事务记录在日志中保存
DELETE FROM 表名称
WHERE 列名称 = 值;
TRUNCATE TABLE 表名称
DROP TABLE table_name
- .以cno升序、degree降序查询Score表的所有记录
select *
from score
order by cno,degree desc
- .查询表QTY中列名NAME下,LOVE条件,有几条数据
select count(NAME)
from QTY
where NAME = 'LOVE';
- .查询表QTY中,最高QTY_D的,QTY_D、SEQ_ID和NAME
select NAME,SEQ_ID,QTY_D
from QTY
where QTY_D in(select max(QTY_D) from QTY);
- .查询表QTY中,相同NAME下,QTY_D的平均值
select avg(QTY_D),NAME
from QTY
group by NAME;
- .查询QTY表中,至少有5个相同NAME下,并以“冰”开头的,QTY_D的平均值、NAME和相同NAME的数量
select avg(QTY_D),NAME,count(PRODUCT_CATEGORY_NAME)
from QTY
where NAME like '冰%'
group by NAME
having count(NAME)>5;
- .查询QTY表中,多个字段,和他们的平均值(字段必须是数字型)
select QTY_D,QTY_D_TQ,QTY_M,QTY_M_TQ,(QTY_D+QTY_D_TQ+QTY_M+QTY_M_TQ)/4 as average
from QTY
- .查询QTY表中,QTY_D的值,并对QTY_D的值做出评价
select QTY_D,(case when QTY_D<20 then '低'
when QTY_D>=20 and QTY_D<=50 then '中'
when QTY_D>50 then '高'
else '低' end) as evaluation
from QTY
CASE WHEN condition THEN result
[WHEN...THEN...]
ELSE result
END
condition是一个返回布尔类型的表达式,
如果表达式返回true,则整个函数返回相应result的值,
如果表达式皆为false,则返回ElSE后result的值,
如果省略了ELSE子句,则返回NULL。
详细用法
select max(字段名),min(字段名)
from 表名
select _NAME,sum(_M),sum(_PBP),round(sum(_M)/sum(_PBP),3)*100||'%' pbp达成率
from 表名
group by _NAME;
SELECT decode(achieve_rate,0,'0.00', to_char(round(achieve_rate*100,2),'FM9999999999999999.00'))||'%'
FROM ACHIEVE_RATE
select * from tableName where rownum <= 10;
select * from (select rownum rn,t.* from tableName t) where rn<=100 and rn >=10;
select t.id,t.score 数学分数,rownum
from
(select b.id,b.score
from grade b
where b.subject='数学'
order by score
desc) t,
student a
where a.id=t.id