eygle.com   eygle.com
eygle.com  
 

« October 3, 2005 | Blog首页 | October 5, 2005 »



October 4, 2005

Oracle HowTo:如何使用Oracle case函数

作者:eygle

出处:http://blog.eygle.com

通过实例简要介绍case函数的用法。

1.创建测试表:

DROP SEQUENCE student_sequence;
CREATE SEQUENCE student_sequence  START WITH 10000  INCREMENT BY 1;

DROP TABLE students;
CREATE TABLE students (
  id               NUMBER(5) PRIMARY KEY,
  first_name       VARCHAR2(20),
  last_name        VARCHAR2(20),
  major            VARCHAR2(30),
  current_credits  NUMBER(3),
  grade     varchar2(2));

INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
  VALUES (student_sequence.NEXTVAL, 'Scott', 'Smith', 'Computer Science', 98,null);

INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
  VALUES (student_sequence.NEXTVAL, 'Margaret', 'Mason', 'History', 88,null);

INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
  VALUES (student_sequence.NEXTVAL, 'Joanne', 'Junebug', 'Computer Science', 75,null);

INSERT INTO students (id, first_name, last_name, major, current_credits,grade)
  VALUES (student_sequence.NEXTVAL, 'Manish', 'Murgratroid', 'Economics', 66,null);

commit;

2.查看相应数据

SQL> select * from students;

        ID FIRST_NAME           LAST_NAME            MAJOR                          CURRENT_CREDITS GR
---------- -------------------- -------------------- ------------------------------ --------------- --
     10000 Scott                Smith                Computer Science                            98
     10001 Margaret             Mason                History                                     88
     10002 Joanne               Junebug              Computer Science                            75
     10003 Manish               Murgratroid          Economics                                   66

3.更新语句

update students
set grade = (
select grade from
(
select id,
case when current_credits > 90 then 'a'
     when current_credits > 80 then 'b'
     when current_credits > 70 then 'c'
else 'd' end grade
from students
) a
where a.id = students.id
)
/

4.更新后结果

SQL> select * from students;

        ID FIRST_NAME           LAST_NAME            MAJOR                          CURRENT_CREDITS GR
---------- -------------------- -------------------- ------------------------------ --------------- --
     10000 Scott                Smith                Computer Science                            98 a
     10001 Margaret             Mason                History                                     88 b
     10002 Joanne               Junebug              Computer Science                            75 c
     10003 Manish               Murgratroid          Economics                                   66 d

Posted by eygle at 9:44 PM | Comments (0)


回家纪事-之四

作者:eygle

出处:http://blog.eygle.com

吉林省的主要作物就是玉米,秋收也就是做的收获玉米的一些工作。
首先要做的是"割地",也就是把玉米杆割倒,这个是最考验手劲的,小时候经常是一天割下来会起满手的水泡,现在要好得多了,不过割的久了,张开手,手指仍然是麻木的难以伸直。
记得上小学的时候,学校里有很多地,每年秋天在记忆里都是一场噩梦。学校的地很多,一垄也很长,可能有几里路,割地的时候一眼望不到边际,用现在的话说,那就是"晕倒"。那时候就盼着升学,因为初中的地少一些,高中的更少一些,大学居然没有了,真是开心:D
收割

"扒玉米"是把玉米去叶的过程,这个也是很累的一个环节,最磨损双手,干多了活,双手会裂,很痛很痛的。
现在"玉米"这个词在网络上被赋予了新的含义,可是谁又知道收获的每个环节都是那么的艰辛呢?
玉米

前面所说的一穗,就是这个啦,vera和sunny看好啦,哈哈
所谓一穗

这是俺家的"敞篷跑车",干完活就用这个车拉回家来,这个车很简单,没有任何减震机械,所以在农村的路上会一跳一跳的,俗称就叫"小蹦瞪",够先进吧:
俺家的敞篷跑车

谁有兴趣来坐坐俺家的跑车?

Posted by eygle at 8:06 PM | Comments (29)



CopyRight © 2004-2008 eygle.com, All rights reserved.