oracle伪表查询,oracle基本查询

oracle基本查询

登录到oracle:

在本机进入虚拟机中oracle中的orcl数据库:

sqlplus scott/tiger@10.10.10.128:1521/orcl

在本机浏览器中登录到orcl数据库:

虚拟机ip:1158/em

登录:sys password sysdba

isqlplus:

虚拟机ip:5560/isqlplus

录屏:

spool:录屏命令

开启:spool d:\基本查询.txt

关闭:spool off

基本操作与设置:

spool d:\基本查询.txt

注释:--

/*

xxxxxx

*/

--清屏:linux:host clear

windows:host cls

--当前用户:show user

--当前用户下的表:select * from tab;

--员工表的结构:desc emp

--查询所有员工信息:select * from emp;

--查看行宽:show linesize

linesize 80:一行显示80个字符,包括空格

--设置行宽:set linesize 150

--设置列宽:

col+列的名字(大小写不敏感)+ for + a(用来代表他是一个字符串)+数字(代表名字这个字符串的宽度是8个字符)

col ename for a8

col+列的名字(大小写不敏感)+ for + 9(用9代表一位数字)

col sal for 9999

--执行上一条sql语句:/

--通过列的名字来查询具体的列:select empno,ename,job,mgr,hiredate,sal,comm,

deptno from emp;(可以分行写)

注意:

SQL语句大小写不敏感。

SQL可以写在一行或者多行

关键字不能被缩写也不能分行

各子句一般要分行写。

使用缩进提高语句的可读性。

sql优化:(数据库的优化)

1. 尽量使用列名(取代*)

当sql敲错的时候:

使用c命令:c(change)

默认定位到上一条语句的第一行,使用数字让其定位到具体的出错的行

2(定位到第二行)

c /form/from(/后的第一个表示要改的单词,后面一个表示要改成的单词)

sql支持算数表达式:

--查询员工信息: 员工号 姓名 月薪 年薪

select empno,ename,sal,sal*12 from emp;

--查询员工信息: 员工号 姓名 月薪 年薪 奖金 年收入

关系:年薪+奖金=年收入 年薪=月薪*12

select empno,ename,sal,sal*12,comm,sal*12+comm from emp;

SQL中的null值:

1. 包含null的表达式都为null

2. null永远!=null

滤空函数:

nvl(a,b):当a的值为空的时候,返回b;如果a的值不等于空,返回a自己

nvl2

--查询员工信息: 员工号 姓名 月薪 年薪 奖金 年收入

关系:年薪+奖金=年收入 年薪=月薪*12(奖金可能为空)

select empno,ename,sal,sal*12,comm,sal*12+comm from emp;

改成:

select empno,ename,sal,sal*12,comm,sal*12+nvl(comm,0) from emp;

--查询奖金为null的员工:

select * from emp where comm is null;

别名:

三种形式:(1)as “姓名”

(2)“姓名”

(3)姓名

一二两种别名没有区别,二三两种别名有区别:

如果别名中含有特殊符号、数字或关键字,必须要加双引号

select empno as “员工”,ename “姓名”,sal 月薪,sal*12,comm,sal*12+nvl(comm,0) from emp;

连接符:

把列与列,列与字符连接在一起。

用‘||’表示

可以用来‘合成’列。

查询员工信息: ***的薪水是****

select ename||'的薪水是'||sal 信息 from emp;

--distinct去掉重复记录:

select deptno from emp;

加入distinct后记录不会重复

select distinct deptno from emp;

select distinct deptno, job from emp;

--distinct作用于后面所有的列

dual 表:伪表

当所做的操作与任何表都无关的时候 ,使用dual表

dual 表:伪表

如:打印hello world

select concat(‘Hello’,’ World’) from dual;

select 3+2 from dual;

查询员工信息: ***的薪水是****

select ename||'的薪水是'||sal 信息 from emp;

sql与sql*plus

d7c044c7c93b

sql与sqlplus.PNG

sql与sql*plus命令

sql:

一种语言

ANSI标准

关键字不能缩写

使用语句控制数据库中的表的定义信息和表中的数据

sql*plus:

一种环境

oracle的特性之一

关键字可以缩写

命令不能改变数据库中的数据的值

集中运行

sql语句:不能被缩写

select insert update delete

sqlplus语句:可以被缩写

desc(escribe)

ed(edit)

c(change)

col(column)

for(format)

在装有oracle的虚拟机上,通过lsnrctl status来查看配置信息

通过修改监听程序参数文件来修改各个配置信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值