posts - 110,  comments - 152,  trackbacks - 0

          第7章 創(chuàng)建計(jì)算字段

          這章主要介紹字段的拼接,將多個(gè)字段組合或變換成你想要的形式。

          1.一般而言,在DBMS中做這種變換和拼接遠(yuǎn)比客戶(hù)機(jī)應(yīng)用程序中做的要快。
          2.拼接可以使用關(guān)聯(lián)符號(hào),但是關(guān)聯(lián)符號(hào)各個(gè)DBMS全不一樣。Access,SqlServer,Sybase用+號(hào);DB2,PostgreSql,Oracle,Sysbase用||,而Mysql使用concat方法.一般而言,||是首選語(yǔ)法。
          3.使用別名也叫導(dǎo)出列,一般通過(guò)AS子句指定,Oracle有些不一樣。
          4.執(zhí)行算數(shù)運(yùn)算,Sql中有通用的4則運(yùn)算,即 +  -  *  /

          第8章 使用數(shù)據(jù)處理函數(shù)

          本章介紹Sql的函數(shù),這應(yīng)該不陌生。

          1.每個(gè)DBMS的函數(shù)不盡相同,使用函數(shù)肯定會(huì)一定程度上造成SQL語(yǔ)句可移植性降低。
          2.每個(gè)DBMS不一樣,用到那個(gè)查那個(gè)的使用手冊(cè)是最佳辦法。

          第9章 數(shù)據(jù)匯總

          這章介紹Sql中的聚集函數(shù)

          1.聚集函數(shù):運(yùn)行在行組上,計(jì)算和返回單個(gè)值的函數(shù).
          2.常見(jiàn)有下面5個(gè),AVG(),COUNT(),MAX(),MIN(),SUM(),意義不用多說(shuō)了。要注意的有幾點(diǎn):一般而言,聚焦函數(shù)是忽略列中的空行(Null值)的,但是Count(*)時(shí)不忽略空行。
          3.通過(guò)ALL和DISTINCT來(lái)聚集不同值。ALL為默認(rèn),對(duì)所有行執(zhí)行計(jì)算;DISTINCT,對(duì)不同的值進(jìn)行計(jì)算。所以DISTINCT就不能和Count(*)配合使用。
          4.有些DBMS還提供了其他的聚集參數(shù),如Top 和Top Percent。

          第10章 分組計(jì)算

          上一章內(nèi)容的延續(xù),找出匯總表內(nèi)容子集的方法。主要是Group by子句和Having子句。

          Group By子句

          1.Group By子句限制超多,該子句一般在按組計(jì)算聚合時(shí)使用。
          2.Group By子句可以包含任意數(shù)目的列,這些列進(jìn)行使得分組進(jìn)行嵌套,而數(shù)據(jù)將在最后確定的分組上面匯總。
          3.Group By子句中的每個(gè)列必須是檢索列或是有效表達(dá)式,而且一般不能是長(zhǎng)度可變的數(shù)據(jù)類(lèi)型(如文本或備注型字段);如果使用有效表達(dá)式,則必須在Group By子句中采用相同的表達(dá)式,不能使用別名.
          4.除聚集計(jì)算語(yǔ)句外,Select語(yǔ)句中的每一個(gè)列都必須包含在Select語(yǔ)句中。
          5.如果分組列中具有Null值,則Null值將作為一個(gè)分組返回.
          6.Group By子句應(yīng)該于Order By子句配合使用來(lái)控制最終的輸出順序.

          Having子句

          1.Having子句作用和Where子句類(lèi)似,完成某種形式的過(guò)濾。Having子句可以支持所有的Where操作符。
          2.Having子句與Where子句的不同:Having子句是針對(duì)分組聚集值來(lái)過(guò)濾的,而不是針對(duì)某個(gè)特定的行值過(guò)濾的。
          3.Having子句與Where子句的不同:Having子句是在分組后過(guò)濾的,而Wher子句實(shí)在分組前過(guò)濾的.

          第11章 子查詢(xún)

          這章介紹子查詢(xún),也算是老朋友了。

          1.子查詢(xún)一般用在Where子句和In子句中充當(dāng)過(guò)濾條件的一部分,另外子查詢(xún)還可以用來(lái)填充計(jì)算列(這個(gè)偶用的少)。
          2.子查詢(xún)只能查詢(xún)一個(gè)列,如果查詢(xún)多列會(huì)出錯(cuò)
          3.子查詢(xún)用的不好對(duì)DBMS性能下降比較大,選擇子查詢(xún)要慎重。(這點(diǎn)偶是受害者,我的一個(gè)子查詢(xún)的Sql執(zhí)行了15分鐘,幸好只是個(gè)測(cè)試,要是上了項(xiàng)目,那就成笑話(huà)了)

          就到這里了,下次繼續(xù).



          平凡而簡(jiǎn)單的人一個(gè),無(wú)權(quán)無(wú)勢(shì)也無(wú)牽無(wú)掛。一路廝殺,只進(jìn)不退,死而后已,豈不爽哉!
          收起對(duì)“車(chē)”日行千里的羨慕;收起對(duì)“馬”左右逢緣的感嘆;目標(biāo)記在心里面,向前進(jìn)。一次一步,一步一腳印,跬步千里。
          這個(gè)角色很適合現(xiàn)在的


          posted on 2007-10-19 17:12 過(guò)河卒 閱讀(1319) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): DataBase/Sql
          文章來(lái)自: http://www.blogjava.com/ponzmd/ (彭俊-過(guò)河卒) 轉(zhuǎn)貼請(qǐng)聲明!
          訪問(wèn)統(tǒng)計(jì):
          主站蜘蛛池模板: 叶城县| 高陵县| 广河县| 临西县| 巴林右旗| 吉安县| 贵州省| 库车县| 安义县| 青冈县| 新化县| 陇南市| 南平市| 陆丰市| 元氏县| 嘉禾县| 资源县| 南溪县| 类乌齐县| 北海市| 青阳县| 孝昌县| 安仁县| 会泽县| 平武县| 灵川县| 新绛县| 荥阳市| 浦北县| 通辽市| 六枝特区| 梁河县| 临桂县| 湘乡市| 奈曼旗| 清流县| 阿坝县| 大同县| 徐闻县| 阜新| 河津市|