输入参数
carid in (&carids)
输入日期范围
trunc(e.startdate) between date '&datefrom' and date '&dateto''
and中需要带选择时
and (o.orgid in (&orgids) or o.parentorgid in (&orgids))
创建数据库唯一的索引
create unique index 索引名 on 表名 (列名);
create unique index sname on S(sname)
删除唯一性约束
ALTER TABLE table_name DROP CONSTRAINT constraint_name;
alter table j drop constraint jname
创建检查约束条件(check)
查询总个数
select count(1) from p;
分类查询个数
select pno,count(*) from spj group by spj.pno;
查询零件名以“螺”字开头的零件信息
select * from p where pname like '螺%';
查询平均数
select avg(weight) from p;
创建视图
create or replace view spj_view
as
select s.sname, p.pname, j.jname, p.color, j.city, spj.qty from s,p,j,spj
where spj.sno=s.sno and spj.pno=p.pno and spj.jno=j.jno;
创建存储过程
create or replace procedure pro_s(no s.sno%type,name s.sname%type,city s.city%type)
as
cou number;
begin
select count(*) into cou from s where no = s.sno;
if cou=0 then
insert into s values(no,name,city);
dbms_output.put_line('增加成功');
else
dbms_output.put_line('增加失败');
end if;
end;
存储过程调用
begin
PRO_S('S11','精益4','天津');
end;
begin
PRO_S('S13','为民2','上海');
end;
外连接
在等值连接的基础上加上被连接表的不匹配数据。
- 左连接(以左边的数据为基准)
(1)left join
或left outer join
(2)条件a=b(+)
,以a表数据为基准。 - 右连接(以右边的数据为基准)
(1)right join
或right outer join
(2)条件a(+)=b
,以b表为基准。 - 全外连接
在等值连接的基础上将左表和右表的未匹配数据都加上。
(1)full outer join
或者full join
等价写法:对同一张表先做左连接,然后右连接。
内连接(等值连接)
选出两表中互相匹配的记录。
- 直接等式
SELECT *
FROM TESTA,TESTB
WHERE TEST A.A=TESTB.A
- 使用
inner join
SELECT *
FROM TEST A inner join TEST B
on TEST A.A=TEST B.A