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 使用。