· [Java论坛][安全论坛][数据库论坛][操作系统论坛]
· [专题] IBM Rational高峰论坛 Windows 7十大功能
· [专题] 史上就危险7月 微软 BizSpark 计划介绍
· [IT技术周刊][IT资源下载专区][病毒求助专区]
· [热点] 我也能做CTO_赛迪连载 赛迪七夕特别行动
· [热点] Chrome 4.0采用V8引擎 Java开发编程规范

PL/SQL循序渐进全面学习教程 (1)

发布时间:2005.07.21 12:43     来源:chinaunix.net    作者:prewind

课程一 PL/SQL 基本查询与排序

本课重点:

1、写SELECT语句进行数据库查询

2、进行数学运算

3、处理空值

4、使用别名ALIASES

5、连接列

6、在SQL PLUS中编辑缓冲,修改SQL SCRIPTS

7、ORDER BY进行排序输出。

8、使用WHERE 字段。

一、写SQL命令:

不区分大小写。

SQL语句用数字分行,在SQL PLUS中被称为缓冲区。

最后以;或 / 结束语句。

也可以用RUN来执行语句

二、举例

例1:

SQL> SELECT dept_id, last_name, manager_id
     FROM s_emp;

例2:

SQL> SELECT last_name, salary * 12, commission_pct
     FROM s_emp;

对于数值或日期型的字段,可以进行相应的四则运算,优先级与标准的高级语言相同。

SQL> SELECT last_name, salary, 12 * (salary + 100)
     FROM s_emp;

三、列的别名ALIASES:

计算的时候特别有用;

紧跟着列名,或在列名与别名之间加“AS”;

如果别名中含有SPACE,特殊字符,或大小写,要用双引号引起。

例:

SQL> SELECT last_name, salary,
     12 * (salary + 100) "Annual Salary"
     FROM s_emp;

四、连接符号:||

连接不同的列或连接字符串

使结果成为一个有意义的短语:

SQL> SELECT first_name || ’ ’ || last_name
     || ’, ’|| title "Employees"
     FROM s_emp;

五、管理NULL值:

SQL> SELECT last_name, title,
     salary * NVL(commission_pct,0)/100 COMM
     FROM s_emp;

此函数使NULL转化为有意义的一个值,相当于替换NULL。

六、SQL PLUS的基本内容,请参考《SQL PLUS 简单实用精髓篇》

七、ORDER BY 操作:

与其他SQL92标准数据库相似,排序如:

SELECT expr
FROM table
[ORDER BY [ASC|DESC]];

从Oracle7 release 7.0.16开始,ORDER BY 可以用别名。

另:通过位置判断排序:

SQL> SELECT last_name, salary*12
     FROM s_emp
     ORDER BY 2;

这样就避免了再写一次很长的表达式。

另:多列排序:

SQL> SELECT last name, dept_id, salary
     FROM s_emp
     ORDER BY dept_id, salary DESC;

八、限制选取行:

SELECT expr
FROM table
[WHERE condition(s)]
[ORDER BY expr];

例1:

SQL> SELECT first_name, last_name, start_date
     FROM s_emp
     WHERE start_date BETWEEN ’09-may-91’
     AND ’17-jun-91’;

例2:

SQL> SELECT last_name
     FROM s_emp
     WHERE last_name LIKE ’_a%’;  //显示所有第二个字母为 a的last_name

例3:

如果有列为NULL

SQL> SELECT id, name, credit_rating
     FROM s_customer
     WHERE sales_rep_id IS NULL;

优先级:

Order Evaluated Operator

1 All comparison operators (=, <>, >, >=, <, <=, IN, LIKE, IS NULL, BETWEEN)

2 AND

3 OR

总结:我们今天主要学习了如何进行查询SELECT操作,具体的组合查询与子查询将在以后的课堂中学习,同时希望大家可以工作、学习中多多摸索,实践!

1 2 3 4 5 6 7 8 9 10 11 12 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
资讯 通信 IT产品 IT技术 信息化
专题:谷歌发布PC操作系统Chrome OS
·芯能量 新动力 兴经济:..
·专题:英特尔与AMD和解 ..
·专题:惠普27亿收购3Com..
专题:
·专题:诺基亚危局已现 ..
·六股势力角逐4G标准 中..
·专题:联通iPhone并不贵..
 
·惠普123459黑白激打家族..
·云计算格局初现 三大阵..
·分析:虚拟化在高性能计..
2009 IBM动态架构新动力论坛
·直播:第八届中国系统与..
·专题:置身智慧海洋——..
·专题:让物品开口说话 ..