Oracle数据库的基本查询

·基本sql语句

1、DDL数据库定义语言

主要用于建立、修改、删除数据库对象(表),不需要事务的参与

CREATE:创建表

CREATE TABLE emp(

id NUMBER(10),

name VARCHAR2(20),

gender CHAR(1),

birth DATE,

salary NUMBER(6,2)

);

DESC :查询表结构

DESC emp;

RENAME:重命名表名

RENAME emp TO employee;

DROP:删除表

DROP TABLE emp;

ALTER:列(字段)操作

ADD:增加字段

ALTER TABLE employee ADD (birth DATE DEFAULT sysdate);

MODITY:修改字段

ALTER TABLE employee MODIFY (name VARCHAR2(40) DEFAULT 'CLERK' );

DROP:删除字段

ALTER TABLE employee DROP (birth);

2、数据库操作语言DML

用于对数据记录进行操作,包括插入,删除,修改,查询。前三者需要commit才能真正确认操作,如果需要撤销则rollback。

 

TIP:Sql语句错误时,输入edit修改,并用/提交修改后的语句

INSERT INTO:插入数据

INSERT INTO employee(id, name, salary) VALUES(1001, 'rose', 5500);

UPDATE…SET..:更新数据

UPDATE employee SET salary = 8500 WHERE name = 'ROSE';

DELETE FROM:删除记录

DELETE FROM employee WHERE job is null;

注意,如果需要插入时间,需要使用时间格式化函数to_date()进行插入

insert into emp(birth) values (to_date('2018-02-02','yyyy-mm-dd'));

输入的sql语句出现错误,可输入edit语句进行编辑

EDIT:修改上一条sql
/:提交sql

基本查询:

select name,birth from emp;
select name||'的工资是'||salary from emp;
select count(*) from emp;
select distinct(name) from emp;

条件查询

select * from emp where name like '%o%';
select * from emp order by id desc;

 

·Oracle的函数

    ·单行函数

            ·字符函数

小写化 select lower('Hello World') from dual;
剔除 select trim('h','Hello Worldh') from dual;
查找位置 select instr('Hello World','r') 位置 from dual;
截取 select substr('Hello World',3,4) from dual;

            ·数值函数

四舍五入  select round(45.666,2) from dual;
截断  select trunc(45.666,2) from dual;
求余  select mod(45.666,2) from dual;                                          
格式化求系统时间 select  to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

    ·多行函数(组函数)

avg(),sum(),min(),count()
select sum(salary)/count(*) 一,avg(salary) 二 from emp;

注意,count(*)代表表中所有行数,无论该行的salary列为不为空,所以一可能是错误的,数值偏小或等于avg(salary);

分组查询:

select id,conut(*) from emp group by id;

抽象出来:

select a,b,组函数(b) from xx group by a,b;

如果a,b是部门和职位,组函数(b)求的是薪水平均值,那么这个分组查询的结果就是查询各部门中的各职位的薪水平均值;

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BoringError

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值