Oracle数据库基本查询语句
--数据库连接
--普通用户连接:Conn scott/tiger
--超级管理员连接:Conn "sys/sys as sysdba"
--Disconnect; 断开连接
--DML 语句(数据操作语言)Insert、Update、Delete、Merge
--DDL 语句(数据定义语言)Create、Alter、Drop、Truncate
--DCL 语句(数据控制语言)Grant、Revoke
--通配符 *
select * from EMP;
--where 条件
select empno,ename from emp where job = 'MANAGER'; --列出职位为MARTIN的员工的编号,姓名
--基本运算 > +
select * from emp where comm>sal; --找出奖金高于工资的员工
select sal+comm,ename from emp; --找出每个员工奖金和工资的总和
--关系运算符 or and
select * from emp where (deptno=10 and job='MANAGER') or (deptno=20 and job='CLERK'); --找出部门10中的经理(MANAGER)和部门20中的普通员工(CLERK)
-- in
select * from emp where deptno=10 and job not in('MANAGER','CLERK') and sal>=2000; --找出部门10中既不是经理也不是普通员工,而且工资大于等于2000的员
-- null 和 not null
select distinct job from emp where comm is not null and comm>0; --找出有奖金的员工的不同工作
--order by 排序
select ename from emp order by hiredate; --显示雇员姓名,根据其服务年限,将最老的雇员排在前面
select ename from emp order by hiredate desc; --desc 从高到低
--upper 字母全部大写
select upper(ename) from emp;
select * from emp where ename=upper('smith');
--lower 字母全部小写
select lower(ename) from emp;
select * from emp;
--initcap 首字母大写
select initcap(ename) from emp;
--concat 合并多个数组
select concat (ename,job) from emp;
--substr 截取字符串长度
--substr(String,start,length)
--string 指定要截取的字符串
--start 必须,指定在字符串的何处开始 正数从指定位置开始 复位从尾数开始 零从第一个字符开始
--length 可选,指定要截取的字符串长度,默认时时结束之前的全部字符
select ename,
substr (ename,-3), --从倒数第三个位置开始,截取之后的字符
substr (ename,-3,2), --从倒数第三个位置开始,截取之后的两个长度的字符
substr (ename,length('ename')-3), --设定一个五个长度的字符'ename' (5-3)从第二个位置开始截取
substr (ename,length('ename')-3,2), --设定一个五个长度的字符'ename' (5-3)从第二个位置开始截取2个字符长度
substr (ename,length(ename)-3), --从每个对象的字符串长度-3开始截取,截取之后的字符
substr (ename,length(ename)-3,2) --从每个对象的字符串长度-3开始截取,截取之后的两个长度的字符
from emp;
--length 获取字符串长度
select length (ename) from emp;
--replace 替换字符 将A换成C
select replace (ename,'A','C') from emp;
--instr 查找里面某一个数据的位置 ’字符’区分大小写
select instr (ename,'S')from emp;
--lpad 左侧填充
select ename,
lpad (ename,5,'*'), --从左侧开始 用'*'将字符长度填充够5个长度
lpad (ename,5,'网盘') --不能识别汉语
from emp;
--rpad 右侧填充
select rpad (ename,5,'*') from emp; --从右侧开始 用'*'将字符长度填充够5个长度
--trim 过滤 过滤收尾空格
select trim (' loyer ') from emp;
--round 四舍五入
select round (sal,-2) from emp; --四舍五入小数点前面的第二位以后的数
select round (sal,2) from emp; --四舍五入小数点后面的第一位以后的数
--trunc 将数字截尾取整(并非四舍五入)
select trunc (sal,-2) from emp; --从小数点前面的第二位开始截断
select trunc (sal,2) from emp; --从小数点后面的第二位开始截断
--mod 取余
select mod (sal,300) from emp;
--months_between 两个日期相差的月数 sysdate代表系统时间 hiredate入职时间
select hiredate from emp;
select hiredate, months_between (sysdate,hiredate) from emp;
--add_moths 向指定日期你中加上若干月数
select add_months (sysdate,1) from emp;
--next_day 指定周内里的一个日期 取值1-7
select next_day (sysdate,7) from emp;
--last_day 本月的最后一天
select last_day (sysdate) from emp;
--round日期四舍五入 24小时制 时间过半会进成第二天
select round (sysdate) from emp;
--trunc日期截断 精确到小时会自动去掉
select trunc (sysdate) from emp;
--to_char 是把日期或数字转换为字符串
select to_char(sysdate,'yyyy') from dual;
select to_char(sysdate,'yyyy-mm-dd') from dual;
select to_char(sal,'L999,999,999') from emp;
select to_char(sysdate,'D') from dual;
--to_number 将字符转化为数字
select to_number(sysdate)+to_number(13) from dual;
--to_date 是把字符串转换为日期
Select to_date('','yyyyMMdd') from dual;
--insert into 插入信息
insert into bonus values ('','王六','普工','','',sysdate);
insert into bonus (ename,sal) values ('李四','')
--alter 添加列
alter table bonus add ID varchar(10)
--drop 删除列
alter table bonus drop column TIMET
--delete 删除属性
delete from bonus where ename like '%张三%'
--update 更新修改
update bonus set 工资 = (select 工资 from bonus where ID='') where ID ='' --更新2号员工的工资使其与1号员工工资相同
--拷贝一个和bonus相同属性的表
create table bonus as select * from bonus
--删除表的所有属性
delete from bonus
--defau 默认值
update bonus set 工资=default where 名字 ='赵六'
--设定主键
create table Vip (Vid number(5) primary key,Vname varchar2(10),Vday date);
Oracle数据库基本查询语句的更多相关文章
- Oracle数据库,查询语句、内置函数
一.数据库的查询语句: 1.查询整个表: select * from 表名 例: 2.通过条件查询某一行数据: select * from 表名 where 字段名 例: 3.某一列数据去重查询: s ...
- Oracle数据库常用查询语句
1.[oracle@dbserver ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.4.0 Production on Tue Mar 15 15:1 ...
- Oracle数据库 基础SQL语句练习
一.说明 第一次使用Oracle,想做一些练习,熟悉一些oracle. 表:使用的是scott用户,默认的表 具体表讲解,可以参考该文档:https://www.cnblogs.com/xjcheng ...
- Oracle中分页查询语句
Oracle分页查询语句使我们最常用的语句之一,下面就为您介绍的Oracle分页查询语句的用法,如果您对此方面感兴趣的话,不妨一看. Oracle分页查询语句基本上可以按照本文给出的格式来进行套用.O ...
- oracle数据库常用查询一
oracle数据库常用查询一 sqlplus / as sysdba; 或sqlplus sys/密码 as sysdba;两者都是以sys登录.conn scott/tiger@orcl; conn ...
- ORACLE数据库常用查询二
ORACLE数据库常用查询 1.查看表空间对应数据文件情况: SQL MB,AUTOEXTENSIBLE FROM DBA_DATA_FILES; TABLESPACE_NAME FILE_NAME ...
- Oracle的分页查询语句优化
Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用. (一) 分页查询格式: SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT ...
- Oracle执行SQL查询语句的步骤
Oracle执行SQL查询语句的步骤 如果用户在SQL*Plus下输入了如下查询语句:SELECT * FROM dept: 查询语句的处理主要包括三个过程:编译(parse).执行(execute) ...
- Oracle 数据库分页查询的三种方法
一.Oracle 数据库分页查询的三种方法 1.简介 不能对 rownum 使用 >(大于或等于 1 的数值).>=(大于 1 的数值).=(不等于 1 的数值),否则无结果.所以直接用 ...
随机推荐
- linux上安装Docker
https://blog.csdn.net/qq_36892341/article/details/73918672
- python之集合及其方法---整理集
集合的定义: 由不同元素组成.一组无序排列的可hash值.集合中元素必须是不可变类型 集合的定义方式: 由大括号组成: 每个元素用逗号分隔: 元素书写不是key-value形式: 集合是由不同元素组成 ...
- java第八章JDBC
JDBC实现各种数据库的访问 实现把各种数据存入数据库从而长久保存(JDBC充当了java应用程序于各种不同数据库之间进行对话的媒介) JDBC工作原理 JDBC API由Sun公司提供,主要包括Co ...
- win7系统标准用户恢复administrator账号方法
一次误操作,把管理员账号给禁用了,满眼的泪花~~~~~~~~~ 标准用户,什么都干不了,怎么办呢????? 度娘一下,各种奇葩答案,就是解决不了 呵呵,最后找到了解决方法: 1.开机后BIOS过后,按 ...
- poj 2778 AC自动机+矩阵快速幂
题目链接:https://vjudge.net/problem/POJ-2778 题意:输入n和m表示n个病毒,和一个长为m的字符串,里面只可以有'A','C','G','T' 这四个字符,现在问这个 ...
- C# 截取两个指定字符串中间的字符串列表
/// <summary> /// 截取两个指定字符串中间的字符串列表(开始和结束两个字符串不能相同!) /// </summary> /// <param name=& ...
- QT Designer基础——登录界面设计基础版
认识QT Designer提供的可选控件:以下八个大类 Layouts:布局相关 Spacers:留空 Buttons:可点击的按钮类 Item Views和 Item Widgets:高级控件,例如 ...
- Centos 6.5使用vsftpd配置FTP服务器教程
Centos 6.5使用vsftpd配置FTP服务器教程什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序.特点是小巧轻快,安全易用.vsftpd 的名字代表”ver ...
- Java8-函数式接口理解及测试
1. 函数式接口的理解 根据重构的思想,需要把容易变化的模块进行抽象并封装起来,从这个点来看,Java8新引入的函数式接口就是基于这个思想进行设计的. 2. 函数式接口定义 2.1 自定义如下 需要 ...
- MacbookPro下载word文件显示dms怎么办
方法:直接改扩展名!!!!!!!!!! 如果你下载的是word的话,把最后的扩展名.dms改成.doc就可以了. 同理,如果你下载的是rar的话,改成rar就好了.