目录
- 5 Oracle的基本查询、过滤和排序查询
-
- 5.1 解决SqlPlus出现中文乱码的问题
- 5.2 Oracle基本查询语句
-
- spool 保存sql到文件
- host cls 清屏
- show user 显示当前登录用户
- select * from tab; 显示当前用户下的表
- desc 查询表的结构【desc emp;】
- show linesize 显示行宽
- set linesize 150 设置行宽
- col ename for a8 设置ename列宽,显示8个字符,a表示字符
- col sal for 9999 设置sal列显示4个数字,9表示数字
- / 表示执行上一条语句
- c Change 命令,输错语句时用【如: c /form/from】
- * + 乘法和加法运算
- 查询表中的null值
- as 列的别名
- ed 进入写入缓存文件 file afiedt.buf【方便修改长sql语句】
- distinct 1.去除重复 2.作用于后面所有的列
- concat 字符串连接
- dual 表示一个虚表
- || 也表示字符串连接
- 5.3 Oracle的过滤和排序查询
5 Oracle的基本查询、过滤和排序查询
5.1 解决SqlPlus出现中文乱码的问题
- 之前使用的是hr登录,现在使用设置的另外一个登录
- 使用scott帐号登录【sqlplus scott/scott@192.168.10.34:1521/orcl】
- 起别名的时候发现中文乱码问题
第一步
- 在sqlplus中执行 select userenv(‘language’) from dual;
- 查看当前数据库的字符集为:AMERICAN_AMERICA.ZHS16GBK
- 我们只需要把客户端字符集和操作系统字符集都设置成:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 就行了
第二步
- 在系统环境变量中查找一个名为“NLS_LANG”的环境变量,如果找不到,则新建一个,把变量值赋值为:“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”
- 关闭dos终端,重写打开(中文乱码问题解决)
5.2 Oracle基本查询语句
spool 保存sql到文件
- 保存sql语句到文件【spool C:\Users\shuyy\Desktop\a.txt】
- spool off 写入内容到文件【要在spool C:\Users\shuyy\Desktop\a.txt 与spool off 之间写入需要保存到文件中的sql,spool off关闭后,再写的sql将不会写入指定文件中】
host cls 清屏
show user 显示当前登录用户
select * from tab; 显示当前用户下的表
- Oracle与MySQL数据库不同,不会像MySQL那样显示数据库,然后使用
- Oracle数据库会直接显示当前用户权限所能看到的表【这里的表是Oracle默认提供的一些表】
desc 查询表的结构【desc emp;】
show linesize 显示行宽
- 查询emp表发现因为行宽问题,显示得很不美观
set linesize 150 设置行宽
- 美观很多
col ename for a8 设置ename列宽,显示8个字符,a表示字符
col sal for 9999 设置sal列显示4个数字,9表示数字
- 999表示显示3个数字,发现4个数字的数据变成了####
/ 表示执行上一条语句
c Change 命令,输错语句时用【如: c /form/from】
* + 乘法和加法运算
#查询员工信息: 员工号 姓名 月薪
select empno "员工号", ename "名字",sal "月薪" from emp;