OCP 复习笔记之PL/SQL (1)

最近打算把9i 的OCP教程看一遍,作一些简单的笔记,作为备忘。

PL/SQL看似简单,但实际使用起来还是很很多技巧和误区的。以下记录的是复习过程中想到的、和容易出现错误的地方。

这些东西在教程大部分是没有记载的。

第一章:编写基本的SQL语句


1.1 SELECT语句

1) 基本语法

SELECT *|{[DISTINCT] column|expression [alias],...}

FROM table;

2) 几个需要注意的地方

Ø 如果SQL语句中需要用到DISTINCT,则该关键字只能出现在紧接着SELECT的地方(在聚合函数中使用除外)

Ø SQL语句一般不区分大小写,但包含在单引号中的字符是区分大小写的。

1.2 几个概念

1) KEYWORD

关键字,如selectwherefrom等。

2) CLAUSE

子句。包括select子句、where子句、from子句、order by子句、group by子句、having子句等。如

select id,count(1) from t where id=1 group by id having count(1)>0 order by id;

每一个颜色代表一个子句。

3) STATEMENT

完整的SQL句子。

1.3 SQL的几个规则(有些不是必须,但为了可读性强最好遵循)

1) 关键字大写,其他小写

2) 缩进

3) 同一个关键字或字段名、列名不能写在两行中。

1.4 算术表达式

1) 算术表达式可以包含列名、数值、算术运算符

2) 算术表达式可用于除from子句以外的所有子句

1.5 空值NULL

1) NULL不等于0,也不等于’’NULLNULL也不相等。

NULL=NULLNULL<>NULL都不成立。

2) 只有NOT NULL和主键可以避免NULL值;UNIQUE约束下列也可以包含一个或多个NULL值。

3) 判断一个某表达式是否为NULL,只能用EXPR IS NOT NULL的形式,不能用EXPR=NULL

1.6 字段别名

1) 包含了空格或其他特殊字符的别名要用双引号括起来。

2) 可以用AS关键字定义别名,也可以不用

3) 如果在定义别名时不加双引号,则别名在显示时(heading)时会把别名全部转换为大写;如果加了双引号,则在显示时与包含在双引号中的内容是一样的。

4) 别名可以用于同层的order by子句中,但不能用于同层的where子句、group by子句中。

1.7 DISTINCT关键字

1) 如果SQL语句中需要用到DISTINCT,则该关键字只能出现在紧接着SELECT的地方(在聚合函数中使用除外)

2) 如果DISTINCT关键字后接了多个字段,则ORACLE会对这些字段的组合进行唯一性过滤。

1.8 SQLiSQL*PLUS

1) SQL是语言,iSQL*Plus是工具

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/231499/viewspace-63768/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/231499/viewspace-63768/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值