2005年07月15日

讀書是一種讀者與作者間的對話,重點不在讀,而是在思考到底手上這本書,對你而言,代表什麼意義,你要去思考,懂得反饋(feedback)。讀書重質不重量,寧可一天只讀半本書或一本書,然後好好告訴自己,讀完這本書,我的生命、行為思考模式,會有多大的改變,進而增強自己生命的力量。

读书还能调节人的情绪,如果一段时间心情不是很阳光,不妨找本感兴趣的书读读,一定会有惊喜。

读书只是狭义的学习,广义的学习是指要知道自己目前的缺点在哪里,之后针对这些部分不断的去改善,也就是一个反馈系统。有时, 你自己可以发现自己的缺点,但人生导师会帮助你更好的认清自己。通常一个人在人生不同的阶段,需要不同的人生导师。所谓人生导师,就是與你沒有利害衝突的人,他是會跟你講真話的人,使你瞭解真相,使你提升生命的力量。

Fist things first,最重要的事情最先處理

我們人經常會逃避困難,總是將最困難的事情拖到最後才做,如果你有這種習慣的話,你的人生會過得很痛苦,假設說這個project期限是一個月的話,你大概一個月都沒好日子過。但如果在第一天就把最困難的事情完成,那剩下二十九天就很enjoy.

2005年07月11日

同时访问一个或多个表的多个记录时就要用到连接查询。连接查询的语意是要从From子句里的各个表的笛卡儿乘积里面找出符合查询条件的所有记录。

在做连接查询时,有时候会若干次重复计算同一目标列表;这种情况在布尔表达式包含"or"时尤甚,为了避免重复,你应该使用 select distinct 语句。

比如,有如下三个表:
SQL> select * from t_company_organ;

PARENT_ID ORGAN_ID
——— ——–
          1
1         2
1         3
1         4
1         5
2         2-1
2         2-2
2         2-3
2         2-4
2         2-5

10 rows selected

SQL> select * from t_area_map;

ORGAN_ID AREA_UD
——– ——-
2        
1        
3


SQL> select * from t_voucher_data;

ACCOUNT_ID ORGAN_ID     AMOUNT
———- ——– ———-
9999       2            100.00


用如下语句查询某区域内各个机构的业务量就会发生重复计算:
SQL> select  a.account_id,a.organ_id,a.AMOUNT from t_voucher_data a,t_area_map b
  2  where ( a.organ_id IN ( SELECT organ_id FROM t_company_organ START WITH parent_id=b.organ_id CONNECT BY parent_id=PRIOR organ_id)
  3   OR  a.organ_id = b.organ_id  );

ACCOUNT_ID ORGAN_ID     AMOUNT
———- ——– ———-
9999       2            100.00
9999       2            100.00


为了避免重复计算,就需要注意使用distinct。在复杂的sql语句中,是很容易犯这类错误的,而且很难察觉。