隨筆 - 39  文章 - 1  trackbacks - 0
          <2013年8月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

            技巧一、取消重復的行

            如在人事管理系統中,有員工基本信息基本表。在這張表中,可能會有部門、職位、員工姓名、身份證件號碼等字段。若查詢這些內容,可能不會有重復的行。但是,我若想知道,在公司內部設置了哪些部門與職位的時候,并且這些部門與職位配置了相關人員。此時,又該如何查詢呢? oracle培訓機構

            若我現在直接查詢部門表,其可以知道系統中具體設置了哪些部門與職位。但是,很有可能這些部門或者職位由于人事變動的關系,現在已經沒有人了。所以,這里查詢出來的是所有的部門與職位信息,而不能夠保證這個部門或者職位一定有職員存在。也就是說,這不能夠滿足于我們上面的要求。

            若我現在直接從員工信息表中查詢,雖然可以保證所查詢出來的部門與職位信息,一定有員工信息的存在。但是,此時查詢出來的部門與職位信息會有重復的行。如采購部門分工合作,可能會有采購采購小組長。此時,在查詢出來的部門與職位的信息中,就會有三條重復的記錄。

            所以,以上兩種處理方式,都不能夠百分之百的滿足企業用戶的需求。此時,我們其實可以利用一個DISTINCT函數,來消除其中查詢出來的重復行。

            如我們可以利用SELECT DISTINCT 部門信息,職位信息 FROM 員工基本信息表。通過這條加了DISTINCT約束的查詢語句,不但可以查詢出所有有員工的職位與部門信息,而且,會把重復的記錄過濾掉,從而提高可閱讀性。

            所以,在數據庫設計過程中,特別是在查詢語句的使用中,這個函數特別有用。

            技巧二、利用連接符連接多個字段

            如在員工基本信息表中,有員工姓名、員工職位、出身日期等等。如果現在視圖中這三個字段顯示在同一個字段中,并且中間有分割符。如我現在想顯示的結果為“經理Victor出身于1976年5月3日”。這該如何處理呢?其實,這是比較簡單的,我們可以在Select查詢語句中,利用連接符把這些字段連接起來。

            如可以這么寫查詢語句:

            SELECT員工職位 ||’ ’ ||員工姓名||’出身于’||出身日期 as 員工出身信息 FROM 員工基本信息表;

            通過這條語句就可以實現如上的需求。也就是說,我們在平時查詢中,可以利用||連接符把一些相關的字段連接起來。這在報表視圖中非常的有用。如筆者以前在設計圖書館管理系統的時候,在書的基本信息處有圖書的出版社、出版序列號等等內容。但是,有時會在打印報表的時候,需要把這些字段合并成一個字段打印。為此,就需要利用這個連接符把這些字段連接起來。而且,利用連接符還可以在字段中間加入一些說明性的文字,以方便大家閱讀。如上面我在員工職位與員工姓名之間加入了空格;并且在員工姓名與出身日期之間加入了出身于幾個注釋性的文字。這些功能看起來比較小,但是卻可以大大的提高內容的可讀性。這也是我們在數據庫設計過程中需要關注的一個內容。

            總之,令后采用連接符,可以提高我們報表的可讀性于靈活性。

          posted on 2013-08-20 16:26 親愛的小孩 閱讀(95) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 达日县| 仙游县| 金塔县| 星座| 军事| 澄迈县| 屏边| 射阳县| 获嘉县| 丰镇市| 灯塔市| 郸城县| 乐陵市| 蒲江县| 巧家县| 合川市| 阳西县| 永兴县| 南昌县| 池州市| 页游| 垫江县| 胶南市| 苏尼特左旗| 社旗县| 榆中县| 宣汉县| 莲花县| 合江县| 宁武县| 禹州市| 大方县| 鞍山市| 巩义市| 博罗县| 南宫市| 鸡东县| 临武县| 林州市| 美姑县| 古蔺县|