常用的sql语言基础(1)
数据文件:存放数据不能随便删除
查看数据方式:select name from v$datafile;
select file_name from dba_data_file;控制文件:是一个二进制文件.ctl形式存在
查看控制文件的方式:
select name from v$controlfile;
show parameter congtrol_flie;临时文件:存放临时数据的
查看方式 :select name from v$tempfile;
select file_name from dba_temp_file;日志文件:对数据库的操作信息的记录,已log的形式存在,分为联机重做日志文件和归档日志文件。
联机重做日志文件:强制记录force_looging 正好记录looging 不记录no_looging查看方式:
select
数据库的三种状态:open,mont挂载,close;
查看数据库是否处于归档状态:archive log list;
归档模式和非归档模式切换:1.关闭数据库:shutdown immediate;
2.登录空闲历程并打开数据库:conn /as sysdba; startup mount;
3.变为归档模式:alter datbase aarchivelog;/*基本查询*/
查询格式:select 列名 from 表名;
--查询系统中的表:select table_name from user_tables;
--查询系统的时间:select sysdate from dual;//从dual中能查询所有想要的系统信息,被称为万能表;
select user from dual;
--查看表中所有的信息:select * from emp;
--查看特定的列名:select empno,ename from emp;
--给列起别名:as可有可无,数字加双引号
select empno 编号,ename 姓名,job 工作 from emp;
select empno as 编号 from emp;
select empno "1" from emp;
select empno as "1" from emp;
--限定条件where:
select * from emp where sal>200; select * from emp where sal>200 and/or sal<300;
--intersect交集and:
select * from emp where sal>200 intersect select * from emp where sal<300;
--union,union all,or, union等同于all;union去除了重复记录,union all 没有去除重复记录,运行效率高
--布尔操作符,排列顺序 not and or
--模糊查询: %表示任意个字符;_表示单个字符
select * from emp where ename like '%A%';//姓名中有A的
select * from emp where ename like '_A%';//第二个字母是A的--排序order by:
select * from emp order by sal asc;//升序排列默认,desc降序排列
select ename,empno,sal,job from emp order by 3;// 对第3列进行排序
select ename 姓名,empno 编号 from emp order by 姓名;
--限定范围:
select * from emp where sal between 200 and 300;//表示范围
select * from emp where sal in('200','300');//表示具体的值
--去除重复数据:
select distinct job from emp;
--空值,查询空值用null,空值处理用nvl,空值与任何值进行逻辑运算都为空;空值默认最大
select * from emp where comm is null;
select nvl(comm,0),ename from emp;
select sal+nvl(comm,0),ename from emp;/*标量函数*/
--字符函数
--大写转换成小写,用lower:
select lower('DLDSFS') from dual;
--小写转换成大写,用upper:
select upper('dfs') from dual;
--首字母大写用initcap
select initcap('sdfd') from dual;
--关联字符串,concat(关联两个字符串)或者||(关联多个字符串)
select concat('hp','BI') from dual; select 'hp'||'BI'||'bd'||'dd' from dual;
--截取字符串,substr,从0开始截取和送1开始截取效果一样表示位置,第三位表示截取长度
select substr('dsfsd',0,3) from dual;//截取前三位
select substr('sdfds',3,3) from dual;
select substr('sdfds',-3,3) from dual;//倒着数开始截取
--求字符串长度,length
select length('dfddf') form dual;----以首字母大写的方式显示所有员工的姓名
select upper(substr(ename,1,1))||lower(substr(ename,2)) from dual;
select concat(upper(substr(ename,1,1)),lower(substr(ename,2)) from dual;
----要求截取员工姓名的后三个字符
select substr(ename,-3) from dual;
--替换字符串replace,2为要替换的字符,3为替换后的字符
select replace('hukdlla','kd','mn') from dual;//将kd替换成mn
select replace('ttttdf','tdf','eee') from dual;
--消除左右空格或字符串,trim; ltrim是消除左面的字符或者空格,rtrim是消除右面。。。。
select ltrim(both 'a' from 'aaaaukkaaa') form dual;
select ltrm('aaaaadd','a') from dual;
select rtrim('aaaakaaa','a') from dual;
select ltrim(' dfdsf') from dual; select rtrim('sdfds ') from dual;
select trim(' dsfdsf ') from dual;
--lpad在左边添加字符到指定的长度;rpad在右边添加字符到指定的长度,(a,b,c),b表示添加的长度,c要添加的字符
select lpad('dsff',12,'a') from dual;
select rpad('dsff',12,'a') from dual;--数值函数
--四舍五入round
select round(123.43) from dual;
select round(123.43,2) from dual;//保留2为小数
--截断小数位用trunc
select trunc(123.43) from dual;
select trunc(123.43,1) from dual;//保留1位小数
select trunc(123.43,2) from dual;//保留2为小数
--取余数mod
select mod(10,3) from dual;--日期函数
--查询系统时间
select sysdate from dual;
--last_day表示当前时间月末最后一天的这个时间
select last_day(sysdate) form dual;
--months_between,表示两个时间的月份数
select months_between(sysdate,hiredate) from emp;
--next_day,表示当前日期开始的下一个星期几
select next_day(sysdate,'星期三') from dual;
常用的sql语言基础(1)的更多相关文章
- SQL语言基础和数据库操作
Sql语言基础: 核心思想:我们自己构造一段查询的代码,然后添加到语句后,从而得到想要的某些数据. Mysql是一种开源数据库 APP Serv:Apache+php+mysql,相当于phpstud ...
- PL/SQL语言基础
PL/SQL语言基础 进行PL/SQL编程前,要打开输出set serveroutput on 1.创建一个匿名PL/SQL块,将下列字符输出到屏幕:"My PL/SQL Block Wor ...
- .NET面试题解析(11)-SQL语言基础及数据库基本原理
系列文章目录地址: .NET面试题解析(00)-开篇来谈谈面试 & 系列文章索引 本文内容涉及到基本SQL语法,数据的基本存储原理,数据库一些概念.数据优化等.抱砖引玉,权当一个综合复习! ...
- 浅谈PL/SQL语言基础
在前面的学习中,我们大部分接触的都是SQL语言,但是,在实现复杂操作的时候,SQL语言就无能为力了,这时候就需要引入新的语言,PL/SQL语言就是对SQL语言的扩展,可以实现存储过程,函数等的创建.下 ...
- .NET面试题解析(9)-SQL语言基础及数据库基本原理
见面试题 1. 索引的作用?她的优点缺点是什么? 2. 介绍存储过程基本概念和 她的优缺点? 3. 使用索引有哪些需要注意的地方? 4. 索引碎片是如何产生的?有什么危害?又该如何处理? 5. 锁的目 ...
- orcale 之 SQL 语言基础
SQL 全称是结构化查询语句(Structure Query Language),是数据库操作的国际化语言,对所有的数据库产品都要支持. SQL 语言的分类 我们按照其功能可以大致分为四类: 数据定义 ...
- 学习笔记:oracle学习三:SQL语言基础之sql语言简介、用户模式
目录 1.sql语言简介 1.1 sql语言特点 1.2 sql语言分类 1.3 sql语言的编写规则 2.用户模式 2.1 模式与模式对象 2.2 实例模式scott 本系列是作为学习笔记,用于记录 ...
- SQL语言基础-基本概念
SQL:IBM的圣约瑟(SanJose),SEQUEL 2(也就是现在的SQL语言) 1979.Oracle首先提出提供了商用的SQL语言 1986.10美国ANSI采用SQL作为关系数据库管理系统的 ...
- OCP认证之Oracle的SQL语言基础(一)
一.Oracle命令类别 数据操纵语言(DML):select;insert;delete;update;merge 数据定义语言(DDL):create;alter;drop;truncate 事物 ...
随机推荐
- Linux搭建smtp服务器+laravel5.2发邮件配置
/** * 这里主要是想通过自己搭建smtp服务器,配置laravel5.2框架,实现邮箱发邮件功能, * 主要内容是搭建smtp服务器,laravel5.2发邮件顺手提一下 */ /** * 1.l ...
- nginx环境下配置nagiosQL-关于nagiosql配置文件
接上文:nginx环境下配置nagios-关于nginx.conf nagiosql文件应该处于conf/domain/目录下 nagiosql配置如下: ; gzi ...
- IE中无法执行JS脚本 解决WINDOWS SERVER 2008弹出INTERNET EXPLORER增强安全配置正在阻止来自下列网站的内容
在默认状态下,使用Windows Server 2008系统自带的IE浏览器访问网页内容时,我们时常发现“Internet Explorer增强安全配置正在阻止来自下列网站的内容”的提示导致不能打开网 ...
- android 学习(1)
第二次发生这种事了,写完啦,手一抖,丢了,这个写完不用博客园了,怪不得用户越来越少 简写 androidstudio安装注意点 1JDK安装需配置环境变量 2安装遇到haxm错误需要进入BIOS打开C ...
- python变量——黑板客老师课程学习
1.和C++.Java的区别: 动态类型:不需要声明a的类型. a=34 type(a) <type ‘int’> 一切皆对象: 4 2.数字: 自动转换类型:a=34 A=3.14 ...
- Linux系统常见的压缩与打包
1.gzip, zcat [root@linux ~]# gzip [-cdt#] 檔名参数: -c :将压缩的数据输出到屏幕上,可透过数据流重导向来处理: -d :解压缩的参数: -t :可以 ...
- Ubuntu 编译安装 Linux 4.0.5 内核,并修复 vmware 网络内核模块编译错误
. . . . . 今天把 Ubuntu 14.04 升级到了最新的 4.0.5 的内核版本,本来不打算记录下来的,但是升级的过程中确实遇到了一些问题,所以还是记录下来,分享给遇到同样问题的猿友. 先 ...
- 使用max() 函数
/********************************* 代码功能:使用串口输出a和b的最大值 使用函数:max(a,b); 创作时间:2016*11*04 作者邮箱:jikexianfe ...
- PTA List Components
For a given undirected graph with N vertices and E edges, please list all the connected components b ...
- Spinal Tap Case
function spinalCase(str) { // "It's such a fine line between stupid, and clever." // --Dav ...