学习(二)

Oracle

Oracle net configuration Assistant net

不仅可以配置监听程序,还可以配置本地net服务名。

一直下一步,输入数据库所在主机的IP地址

选择测试登陆,出现登陆失败提示, 点击更改登录口令

完成后提示测试成功,下一步后随便写一个网络服务名

配置成功后,登陆可以输入 conn scott/tiger@dfbb000

登陆后的一些sql语句练习:

1、 查看当前用户下有哪些表: select * from tab;

2、 查看表结构: desc [tabname];

3、 帮助文档的使用:语法图的阅读方式

4、 查询整张表:select * from tabname;

5、 查询部分字段:字段别名

a)       可以为中文:select empno 编号,ename 姓名 from emp;

b)       可以加as或不加:select empno as eno,ename, sal esal from emp;

c)        使用关键字作为标识符时,包含特殊字符(空格 横线等)时必须加双引号,可以保留大小写

d)       双引号在创建表时可以让系统区分大小写,如果没有双引号,表名一律变成大写

e)       访问小写名称表示,也需要在查询中加双引号, select * from “emp01“否则系统处理为大写

f)        删除表时也,如果表名区分大小写,也要加引号,默认转换为大写。

g)       Drop table emp;= drop table EMP       drop table “emp”;

h)       清楚删除表回收站: purge recyclebin;    回收站已清空。

6、查询部分记录:    where 加 条件

7、查询部分记录部分字段:

8、大小写规则:  关键字不区分大小写,数据本身区分大小写

9、去除查询重复行  distinct  select distinct jbo,empno from emp;

10、  null 的值得匹配不能用=  必须用 is 或者 is not

11、 in  not in 后面跟离散值 in(100,200,300….)

12、

13、区分 in 和  not in 离散值中有null的情况 空值陷阱

select * from emp where comm in(300,500,null);

等价于

select * from emp where comm=300 or comm=500 or comm is null;

而实际要求:

SQL> select * from emp where comm=300 or comm=500 or comm is null;

已选择12行。

SQL> select * from emp where comm not  in(300,500,null);

未选定行

等价:select * from emp where comm<>300 and  comm<>500 and  comm <>null;

实际需求select * from emp where comm<>300 and  comm<>500 and comm is not null;

14、模糊匹配:like % 、_

15、连字符 :  ||  空值 做算数运算得为空 ,空值做连字运算 得实际结果

16、 空值  like  ‘%’  不能获得,所以可以用模糊查询来 排除null

17、order by 6 desc  6代表第六列 降序排列,  数字不能超过列数总和

单行函数:

函数分类:  单行,聚合,分析,对象,实体,用户自定义 函数。

单行函数包括:数值函数  字符 日期 转换   集合 等函数

1、数字函数:

四舍五入

2、字符函数:

Initcap():  单词首字母大写。

                                                                                                                                                    

Contact(,)连字符  ‘ ’表示 单引号

Substr(string,index)  取自串

Length  字符串长度  lengthb  字符串字节长度

Instr()  取字串的下标

Lpad(str,num,str)  在字符串左边添加 ,num代表添加后的字符串字节长度

Rpad(,,)  在右边添加

Trim(,)删除空格或指定参数

Replace()

Translate()

日期相关函数

Select sysdate from dual;

Mm   第几个月  ddd  一年中的第几天  d一周的第几天

模式识别

Current_date

对日期的四舍五入处理:

模式字符串

Nvl()函数

Case的用法:

等值情况

非等值情况

Decode()  等值case 的简写形式

分组聚合函数

Avg(忽略空值)

Rollup  小计

分组统计  指的是   对整张表 某个字段 用分组函数 求出值

分组统计过滤:  having  使用。

原文地址:https://www.cnblogs.com/jiangyi666/p/5673497.html