修改表的主键:从有到无再到有
修改一个表的主键:从 有主键--无主键--有主键 的过程演绎:有效解决因为CTAS方式备份而改变表主键约束导致后期无主键的情况。步骤如下:--查看表emp的表结构:SQL> desc emp; Name &...
监听的配置
监听就是数据库与数据库,客户端与服务端之间的网络沟通桥梁。以下是配置监听的一些过程。1、配置监听的设备:两台机器:服务端:HOST = 192.168.2.4客户端:HOST = 192.168.2.62、配置监听1》服务端:动态:LISTENER = (DESCRIPTION_LIST = &...
警告日志文件alert_.log
警告日志文件在日常当中非常重要。利用警告日志文件可以监控数据库实例,可以查看数据库报错的详细信息等。以下是警告日志文件的一些获取方法:1、查看警告日志文件的方法:1:SQL> show parameter background_dump_destNAME &...
使用V$SQL_PLAN视图
使用V$SQL_PLAN视图获取曾经执行过的SQL语句执行计划 通常我们查看SQL语句的执行计划都是通过EXPLAIN PLAN或者AUTOTRACE来完成。但是这些查看方法有一个限制,它们都是人为触发而产生的,无法获得数据库系统中曾经执行过的SQL语句执行计划。 V$SQL_PLAN视图弥补了这个这个功能缺陷。使用这个视图可以获...
转化函数
转化函数,这里主要讲两种:1、字符型转日期型: To_date(X,fmt):将字符型转化为日期型将字符型日期转化为fmt指定的日期类型SQL> select to_date('2015-12-23','yyyy-mm-dd') 2 from dual;TO_DATE('---------23-DEC-15 2、时间型转字符型:To...
日期时间函数
对于日期时间函数,在这里挑选一些常用的日期时间函数写到这里。日期时间函数:SQL> select sysdate from dual;SYSDATE-------------------2016-10-08:21:41:27SQL> select sysdate,current_timestamp 2 from dual;SYSDATE---------CURRENT_TIMESTAMP--------...
字符函数
字符函数:SQL> select ascii('d'),chr(97) 2 from dual;ASCII('D') C---------- - 100 aAscii()将字符转为十进制数;Chr(interger)将数字转化为与之对应的ascii码。 Concat(str1,str2)将两个字符串连接...
【函数】translate解惑
1、语法TRANSLATE(expr, from_string, to_string)2、功能expr中的字符串进行替换,替换的规则是:from_string与to_string一一对应进行替换,如果没有对应上,那么将expr中的相应字符将删除。文字描述不好理解,...
聚合函数与数字函数
聚合函数也叫统计函数,多行函数。数字函数也叫单行函数。1、最大值最小值:SQL> select min(sal),max(sal) 2 from emp; MIN(SAL) MAX(SAL)---------- ---------- 800 500...
Case表达式与decode()函数
Case表达式与decode()函数两者都是根据字段或者表达式作为判断条件,当条件满足某个值或者范围时,对应有一个结果。多个结果由多个互补相同的条件限制。所以这两个的用法很接近,大同小异,只是case的用法更灵活一些。以下是通过例子讲述一下:(根据不同的职位进行工资调整)查看emp信息:职位为SALESMAN,升工资...
查询中空值null的查理
空值在查询中的处理:在查询的时候,空值的存在,会影响查询数据结果的质量,甚至不准确,我们要知道:nullnull,null0,空值null与其他数据的四则运算的结果都是空值。以下处理讲述一些在查询中处理空值的函数。1、在忽略空值的情况下查询奖金为空员工的工资加奖金作为收入:SQL> select ename,sal...
select查询之六:别名与拼接
在查询工作中,为了查询数据的高可读性,给字段或组合字段起一个别名非常重要。根据人们读取数据的习惯性,在查询的数据中,连接符“||”也经常会用到。1、别名:1》直接 空格接别名:SQL> select sal,comm,sal+comm income 2 from emp 3 where comm is not null;...
查询中的distinct与group by
Distinct 与 group by :本身不想拿distinct这个关键字来讲的,可是想着它在平时的查询中也经常会使用到。它只是指定去重复的一个关键字,既不是函数,又不像from与where这样决定查询语句结构的关键字。使用功能方面,有时候就只是去重功能,有时候起到group by 的功能。所以将它们两个专门拿到这里再讲一下。1...
在关联子查询中in与exists的区别
in与exists在子查询中也容易混用,前者表示是否满足,是否在所确定的范围,后者表示是否存在。理解这两个,还是从null值入手去理解。以下通过一些分解操作来更深理解这两个的的用法,顺便牵涉一些优化的说法。背景:1、在表emp中查看最高领导人员的有关信息:(操作查询前打开sqlplus的计时包:set timing on)1》...
子查询中all与any的区别
有些人往往对子查询中涉及到的all与any容易混淆,以为两个表达的是同一个意思,就以理解英文字面上的大概意思去理解。这里,all是所有,any是指任意一个。以下通过一些例子更明了地去讲述这两个词在查询中的意思。数据背景,都以该查询结果作为子查询的结果:SQL> SELECT distinct salary 2 FR...
【unused】恢复unused的字段
我们知道unused是一个不可逆删除字段的一个动作,原理是先在数据字典中标识某字段为unused,当系统空闲时,再执行彻底删除字段的动作,由于这个unused的动作在设计时就没打算让你恢复...
select查询之五:分析函数在查询的运用
在平时的查询工作中,我们还通常会借助一些分析函数,来协助查询做分析。以下就介绍几个分析函数的例子。基于TOP N:1、数据背景表sc:SQL> select * from sc; SNO CNO GRADE-------...
select查询之四:连接查询
连接查询,有自连接,内连接,外连接与交叉连接,交叉连接也叫笛卡尔积查询。其中外连接又分全外连接、左外连接与右外连接。1、左外连接:查询所有员工的信息并且列出员工的部门名称 SQL> select e.last_name,d.department_id,d.department_name 2 from employees e 3 ...
select查询之二:分组与排序
平时,为了更容易看查询出来的数据,我们往往通过一些分组或者排序处理, 在这里简单讲一下分组字句group by 与排序order by 字句的简单应用,其中, order by 字句永远放在查询语句的最后面。Select语句的总结构:Select [字段] [限制条件] from [数据表] /子查询[嵌套查询]where [筛选条件...
select查询之三:子查询
Select语句的总结构:Select [字段] [限制条件] from [数据表] /子查询[嵌套查询]where [筛选条件] /子查询[嵌套查询]group by[分组字段] /子查询[嵌套查询]Having [辅助筛选条件] /子查询[嵌套查询]order by[排序字段];如以上所示,子查询或...