废话少说 开门见山
跳过Oracle的安装
但是注意设置登陆密码时候一定要设置成简单好记的
一 登陆
利用Oracle公司为我们提供的HR用户 我们可以再初学阶段快速上手
安装oracle完毕后在Windows系统下 command+R 输入 cmd 弹出“小黑框“
在小黑框中
输入 sqlplus
提示输入用户名 输入:HR
提示输入口令 输入你安装时候设置的登陆口令
(在这里要注意的是输入口令在“小黑框“中不会有任何反应 请同我一样的初学者注意!)
如果输入错误会提示ERROR 并让你重新输入
输入正确后悔显示 SQL> 的字样在“小黑框“中 这时 就可以开始键入不同的查询语句来完成你想要的操作了
二 查询
2.1最简单的查询
我们学Oracle 的目的是完成对大量数据的增删查改 等操作
首先学习select 查询语句
注意: select语句不会改变数据库的内部内容
为了避免格式问题造成读者查看不方便 分享的学习过程都将以小图片的格式呈现给大家
2.1.1 查看employees表单
基础语法:select 字段1,字段2,……,字段n from 表
Select是 所要查询的属性 from是数据来源的表单
<在语法上不区分大小写,但是查询制定的字符串会区分大小写>
在学习查询之前我们可以先看一下HR用户下管理的表单有哪些
输入指令 select table_name from user_tables
1 表示要查询表单的名字
2 表示要查询的数据来源
3 显示的结果
<初学阶段 我们首先对SMPLOYEES(员工信息表) 进行相关操作>
可以看到在HR用户下有七个表单(如上图)
<注意:在dos (也就是小黑框)操作中 每一个语句结束又要加分号 代表着该语句的结束 如果指令过长可以回车换行继续输入 当然 如果直接回车忘记输入分号 可以在第二行直接分号 再次回车>
2.1.2 简单的列查询
开始我的表演<从这里还是查询>
在查询之前我们应该清楚employees表单中有那些字段名可以供我们查询。
输入
select * from employees;
来查询 employees表单的所有内容 显示结果如下图 查询到了十个字段名
< *(星号)在Oracle中的通配符的意思 代表所有的 >
例子: 若要查询(员工的姓名) (工资)( 入职时间)
Select first_name , salary , hire_date from employees;
会显示出来的结果是:
2.1.3 plsqldev<了解>
为了方便用户查阅 呈现分段显示 每隔11条数据会有一个标题头
如上图为查询结果 (heir_date 的显示是内部真实的存储情况 为了不让初学者懵圈 我在这里附一张第三方软件)
有兴趣的同学可以自行百度一下
最简单的查询 到此为止
2.2 查询数学运算 ##
查询的数据运算很简单 直接在要变更的数据后面加“+ -* /“符号 ,再加上希望的运算数值即可
例如:
查询员工的工号,姓,工资,年薪
select employee_id , last_name, salary , salary * 12 from employees
其中salary*12 即表示了年薪数据
2.3 为查询起别名
接2.2的知识点我们会发现数据运算后的列名显示的是运算过程,不方便使用者查阅,于是引入给列起别名的知识点
例如:
select employee_id id, salary *12 '年薪' from employees
<其中 as 可有可无>
2.4 字符串的拼接
同样为了方便用户查阅 引入例如字符串
在employees表中,一个人的名字由first_name , last_name两列组成,如果我们想把两列数据合并成一列数据的话,就可以使用字符串连接函数了
<需要注意的是Oracle中的字符串是用’’单引号引起来的>
2.5 取出查询结果中的重复数据
个人感觉这个知识点不会经常用到 所以放在最后总结 希望能够了解
语法:将distinct 放select 后面 可以去除结果里卖弄的重复
例如:
查询公司里所有姓氏 select distinct last_name from employees;
3. order by 排序【重点】
3.1单列排序
语法:select … from … order by…
该语法可以对查询结果进行排序
指定时可以是列的列名、列的别名、或者是列在select里出现时的下标
例如:
按照工资大到小显示员工工号 ,姓 ,收入 select employee_id , last_name , salary from employees
.3.2多列排序
语法:Order by 还可以根据多个列进行排序 参与排序的类的名字一次卸载order by 后面 用逗号隔开。排序时先按照第一列进行排序 第一列的数据相同时会按照第二列开始排序 以此类推
例子见3.3
3.3 排序规则 desc | asc
排序章基本操作到此就结束了