Oracle数据库select简单查询命令及语法
1.使用select语句查询某张表的所有数据内容
语法:
select [distinct] * {col_name1,col_name2,…}
from tb_name;
注意:语法中出现的中括号[],表示该部分可有可无*:表示所有列,仅仅作为测试和学习使用,在企业用语中不出现,因为效率低下且可读性差
col_name1:列名,将需要查阅的数据字段列举出来,可以查看多列值,列名之间用,进行分割即可
s_emp :员工信息表
s_dept:员工部门表
需求:查看s_dept表中的所有记录
select *
from s_dept;select id,name,region_id
from s_dept;
练习:查看s_dept表中的所有记录的id和nameselect id,name
from s_dept;
练习:查看所有员工的id,名字(last_name)和薪资(salary)
select id,last_name,salary
from s_emp;
- 2.select语句可以对指定的列的所有值进行算术运算。
语法:
select col_name 运算符 数字
from tb_name;
需求:查看每个员工的员工id,名字和年薪。
select id,last_name,salary*12
from s_emp;
注意:select语句永远不对原始数据进行修改。
练习:查看每个员工的员工id,名字和月薪涨100以后的年薪
select id,last_name,(salary+100)*12
from s_emp;
3.给查询的列起别名
语法:
select old_column [as] new_column_name
from tb_name;
需求:查看员工的员工id,名字和年薪,年薪列名为annual
select id,last_name,salary*12 annual
from s_emp;4.使用||可以使得多列的值或者列和特殊的字符串合并到一个列进行显示
语法:
select col_name||‘spe_char’||col_name
from tb_name
‘spe_char’:如果一个列的值要跟特殊的字符串连接显示,使用该语法。
需求:查看员工的员工id,全名
select id,first_name||last_name
from s_emp;
练习:查看员工的员工id,全名和职位名称,全名和职位名称合并成一列显示,且格式为:姓 名,职位名称
select id,first_name||last_name||’,’||title name
from s_emp;5.对null值得替换运算
nvl()函数
语法:
select nvl(col_name,change_value)
from tb_name;
需求:查看所有员工的员工id,名字和提成,如果提成为空,显示成0
select id,last_name,nvl(commission_pct,0) commission_pct
from s_emp;6.使用distinct关键词,可以将显示中重复的记录只显示一条
语法:
select distinct col_name,col_name…
from tb_name;注意1:distinct关键词只能放在select关键词后面
如:select id,distinct title
from s_emp;
该语句语法错!!!
注意2:如果distinct关键词后面如果出现多列,表示多列联合去重,即多列的值都相同的时候才会认为是重复的记录。
test表:
id id2
1 2
1 3
2 4
3 4
3 4
select distinct id,id2
from test;
显示结果为:
id id2
1 2
1 3
2 4
3 4
需求:查看所有员工的职位名称和部门id,同职位同部门的只显示一次
select distinct title,dept_id
from s_emp;7.sqlplus命令
sqlplus 登录之后,可以使用buff(缓存)来存储/执行/修改要执行的sql语句
这里的buff的特点:
1.buff中只能存储一条sql语句(但是这条sql语句可能有很多行)
2.每次放入新的sql语句,会把之前的覆盖掉
3.每次执行sql语句,都会把这个sql语句放到buff里面l 查看缓存中的sql语句
a 在[定位]的那一行后面追加新的内容
i 在[定位]的那一行下面插入新的一行
c 替换[定位]的那一行中的某些字符串
c/老的字符串/新的字符串
del 删除[定位]的那一行内容
n 后面加内容可以重写这一行
! 后面接终端命令 !clear:清屏 windows中使用 符 号 例 如 : 符号 例如: 符号例如:cls
/ 执行缓存sql命令clear buffer:清空当前缓存的命令
save test.sql buff中的sql语句保存在test.sql文件中
get test.sql 把test.sql中的内容在加载到buff中,但是没有运行
start test.sql 把test.sql中的内容在加载到buff中并且执行
@test.sql 把test.sql中的内容在加载到buff中并且执行
edit file_name 使用系统默认编辑器去编辑文件spool file_name 将接下来的sql语句以及sql的运行结果保存到文件中
`sql1result1sql2result2...`
spool off 关闭spool功能
exit:退出8.select id,last_name,first_name, salary, dept_id
from s_emp
Where rownum <=10;结果不好看,通过column使显示界面好看。
COLUMN last_name FORMAT a15;
可以简写为:
col last_name for a15;
COLUMN first_name FORMAT a15;Column 没有改变数据表里数据,它只是改变显示。Column不是SQL命令,而是sqlplus命令。除了刚才这个作用之外,我们下面来看看它还有什么作用。
COLUMN last_name HEADING ‘Employee|Name’ FORMAT A15
. 给last_name取别名为Employee|Name , 竖杠代表换行。
. A15表示十五个字节长,一短横杠就是一个字节长COLUMN salary JUSTIFY LEFT FORMAT $99,999.00
. salary JUSTIFY LEFT : 仅仅改变列名显示为左齐
. FORMAT $99,999.00: 控制显示格式为前面加 $ 符, “,”为分隔符, 0或9代表数字(通配符),0表示替换对齐数值,位数不足会补足,可以混合使用。COLUMN start_date FORMAT A8 NULL ‘Not hired’
. 如果start_date值为空的话,显示为’Not hired’;
. Format后不能直接跟null, 要先a8或a10;
. NULL 'Not hired’和nvl类似column 显示所有对列格式的设置情况
column last_name 显示对last_name列显示设置的情况
column last_name clear删除对last_name列格式设置的情况
Clear column 清除所有column的格式设置Column columName
可以显示该列的格式设置,这里的列并不特定于某个表.注意:
1234 column 99.99 – > ###### //出错的时候不能显示,只是显示####
Oracle数据库select简单查询命令及语法相关推荐
- oracle数据库查表_【Oracle数据库】表查询(一)
Oracle数据库的简单查询 本文使用到的数据表如下图: 表名为 EMP .其中,empno为员工号,empname为员工姓名,job为员工岗位,mgr为该员工上司的员工号,hiredate是入职日期 ...
- column ambiguously defined oracle数据库分页语句查询中select嵌套时出错
column ambiguously defined &oracle数据库分页语句查询中select嵌套时出错 转载于 [ lev草梦的博客](http://blog.sina.com.cn/ ...
- oracle 游标查询数据库,Oracle数据库使用游标查询结果集所有数据
--Oracle使用游标查询结果集所有数据 DECLARE myTabelName NVARCHAR2(200):=''; --表名 myTableRowComment NVARCHAR2(200): ...
- Oracle数据库之基本查询
oracle安装参照: Oracle数据库之安装教程 Oracle数据库总结: Oracle数据库之基本查询 Oracle数据库之过滤和排序 Oracle数据库之单行函数 Oracle数据库之多行函数 ...
- Oracle数据库:子查询、单行子查询,多行子查询,in,any,all语句,子查询的练习案例
Oracle数据库:子查询.单行子查询,多行子查询,in,any,all语句,子查询的练习案例 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 ...
- oracle数据库怎么分组查询,oracle数据库之分组查询
本章内容和大家分享的是数据当中的分组查询.分组查询复杂一点的是建立在多张表的查询的基础之上,(我们在上一节课的学习中已经给大家分享了多表查询的使用技巧,大家可以自行访问:多表查询1 多表查询2)而在 ...
- 求数学系或计算机系姓张的学生的信息,实验二数据库的简单查询和连接查询.docx...
贵州大学实验报告 学院:计算机科学与信息学院 专业:信息安全 班级: 姓名 学号 实验组 实验时间 指导教师 成绩 实验项目名称 数据库的简单查询和连接查询 实验目的 使学生掌握SQL Server ...
- oracle 分组 排名,Oracle数据库之分组查询及排序
分组查询:使用 group by 来设置分组,把该列具有相同值的多条记录当成一组记录来处理,然后只会输出一条记录,得到的结果会默认使用升序的方式进行排列. 规则: (1)如果使用了分组函数,或者是 g ...
- 查询计算机系学生的详细记录,实验三_数据库的简单查询和连接_.doc
实验三_数据库的简单查询和连接_ 实验三 数据库的简单查询和连接查询 实验目的及要求 掌握SELECT语句的基本语法: 熟练掌握表的数据简单查询.数据排序: 熟练掌握表的连接查询的表示: 掌握等值连接 ...
最新文章
- ADO.NET 2.0 中的架构
- linux 查看锁机时间,3分钟短文|Linux 登陆痕迹查看,last 锁定所有可疑对象
- c++运算符优先级_C语言入门教程-(6)运算符
- redis为什么是单线程_面试官:Redis单线程为什么执行效率这么高?
- Ubuntu16.04+caffe+digits安装配置
- 如何进行服务器备份操作系统,如何在Linux服务器上做备份和恢复
- 关于网页导航栏制作的几种方法与常见问题解决(新人向)
- 微信公众号 模版消息 跳转到小程序报错{ errcode: 40013, errmsg: 'invalid appid hint: [cC6RwA09011295]' }
- 阿里云自带的mysql_阿里云Centos使用自带mysql
- mysql的三个故障解决小结
- jsf集成spring_Spring JSF集成
- SpringCloud——服务网关
- ios uiswitch 开关_IOS开发(四):开关控件UISwitch
- 一拍是多少秒 计算机制音乐,音乐一个节拍是几秒钟?
- 测试用例篇——设计测试用例的常用方法
- python创建django项目语句_Python3—创建Django项目
- MediaPipe基础(5)Pose(姿势)
- 软件测试基础+微信小程序测试实战
- python实验总结与分析_Python实验报告七
- 微信编辑器——构思编辑器教你如何学好图文排版