已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
SQL語(yǔ)句在審計(jì)的簡(jiǎn)單應(yīng)用SELECT語(yǔ)句是SQL語(yǔ)言中使用頻率最高的語(yǔ)句,完全可以說(shuō)SELECT語(yǔ)句是SQL的靈魂。SELECT語(yǔ)句的作用就是讓數(shù)據(jù)庫(kù)服務(wù)器根據(jù)用戶的要求搜索出所需要的信息資料,并按規(guī)定的格式進(jìn)行整理,再返回給用戶。一、SELECT語(yǔ)句的基本組件和描述:SELECT指明要檢索的數(shù)據(jù)的列。FROM指明從哪(幾)個(gè)表中檢索行。WHERE指明返回?cái)?shù)據(jù)必須滿足的標(biāo)準(zhǔn)(條件)。GROUPBY對(duì)于集合查詢,指明返回的列數(shù)據(jù)通過(guò)這些列來(lái)形成組(分組查詢)。HAVING對(duì)于集合查詢,指明返回的集合值必須滿足的標(biāo)準(zhǔn)。ORDERBY指明返回的排序順序(排序查詢)。例如:簡(jiǎn)單查詢數(shù)據(jù)庫(kù)表hzbb中的以下幾列,并將查詢結(jié)果的每一行都返回在選定列中顯示,可用以下SQL語(yǔ)句表示:SELECT id, lname, fname, state, zip, contractFROMhzbb(前面的列名即字段名如用*表示所有列)即為:SELECT*FROMhzbb添加WHERE條件子句,以縮小檢索范圍。如只返回顯示state列中含有CA字符,并且同時(shí)滿足contract列中值為0的報(bào)有記錄(行)。可用以下SQL語(yǔ)句表示:SELECT id, lname, fname, state, zip, contractFROMhzbbWHERE state =CAANDcontract = 0(邏輯操作符AND表示與的意思,而OR表示或的意思,如使用AND則返回的行必須滿足AND兩邊的條件,OR操作符則要求OR兩邊至少滿足一個(gè)條件)雖然 SELECT 語(yǔ)句的完整語(yǔ)法較復(fù)雜,但是其主要的子句可歸納如下:SELECTselect_list INTO 新表名 FROM表一 ,表二 WHERE 條件表達(dá)式 GROUP BY 分組列 HAVING 指定組或聚合應(yīng)滿足的搜索條件 ORDER BY指定要排序的列 ASC(升序)| DESC(降序) 二、審計(jì)實(shí)務(wù)中的SQL例句說(shuō)明1、在SELECT語(yǔ)句中,“*”表示表中所有的列。如:select*from憑證庫(kù) 該語(yǔ)句表示選擇憑證庫(kù)(表)中所有列的記錄。2、使用TOP關(guān)鍵字用于指定只返回前面一定數(shù)量的數(shù)據(jù)。當(dāng)查詢到的數(shù)據(jù)非常多(如有100萬(wàn)行),但又沒(méi)有必要對(duì)所有數(shù)據(jù)進(jìn)行瀏覽時(shí),使用TOP關(guān)鍵字可以大大減少查詢的時(shí)間。如: SELECTTOP20FROMHZK 表示從數(shù)據(jù)庫(kù)HZK中返回前面20行的數(shù)據(jù)。SELECTTOP 20PERCENTFROM HZK 表示從數(shù)據(jù)庫(kù)表HZK中搜索返回前20%的數(shù)據(jù)。3、使用DISTINCT關(guān)鍵字。使用DISTINCT關(guān)鍵字可從返回的結(jié)果數(shù)據(jù)集合中刪除重復(fù)的行,使返回的結(jié)果更加簡(jiǎn)潔。如:selectdistinct 科目編碼from憑證庫(kù),該語(yǔ)句表示從憑證庫(kù)中選擇科目編碼以及使用distinct關(guān)鍵字后去掉那些重復(fù)的科目編碼,使每個(gè)科目編碼都是唯一。注意:在使用DISTINCT關(guān)鍵字后,如果表中存在多個(gè)NULL的數(shù)據(jù),服務(wù)器將會(huì)把這些數(shù)據(jù)視為相等。4、靈活運(yùn)用SQL語(yǔ)句使用計(jì)算列。在進(jìn)行審計(jì)數(shù)據(jù)分析和查詢時(shí)經(jīng)常需要對(duì)查詢的數(shù)據(jù)進(jìn)行再計(jì)算,這里審計(jì)人員可充分運(yùn)用SELECT語(yǔ)句的功能來(lái)直接使用計(jì)算列對(duì)審計(jì)數(shù)據(jù)進(jìn)行運(yùn)算,而計(jì)算列并不存在于表格所存儲(chǔ)的數(shù)據(jù)中,它是通過(guò)對(duì)某些列的數(shù)據(jù)進(jìn)行計(jì)算而得出的結(jié)果列。例如:將每噸水泥的銷售價(jià)格降低20%:SELECTID,TYPE,銷售價(jià)格,銷售價(jià)格-銷售價(jià)格 * 20%FROMSJKB由于計(jì)算列沒(méi)有列名,所以返回的結(jié)果看不到它的字段名字。在計(jì)算列上,允許使用+、-、*、/、% 和邏輯運(yùn)算符。5、操作查詢的列名。SELECT語(yǔ)句可以根據(jù)實(shí)際的需要對(duì)查詢數(shù)據(jù)的列標(biāo)題進(jìn)行修改,或者為設(shè)立沒(méi)有標(biāo)題的列增加臨時(shí)的標(biāo)題。對(duì)列名進(jìn)行操作的方法有三種:一是在列表達(dá)式后面直接給出列名。SELECT title_id 商品代號(hào), price原價(jià), price price * 0.3現(xiàn)價(jià)FROMtitle二是使用SQL支持的“=”符號(hào)來(lái)連接列表達(dá)式。SELECT 商品代號(hào)=title_id , 原價(jià)=price, 現(xiàn)價(jià)=price price * 0.3 fromtitle三是在指定列標(biāo)題時(shí),使用AS關(guān)鍵字來(lái)連接列表達(dá)式和指定的列名。SELECT title_id AS圖書代號(hào), priceAS原價(jià), price price * 0.3AS 現(xiàn)價(jià) FROMtitle以上三種語(yǔ)句返回結(jié)果相同。注意:在對(duì)列名進(jìn)行操作時(shí),有以下幾個(gè)問(wèn)題值得注意:當(dāng)使用中文列名時(shí),可以不寫引號(hào),但決不能使用全角引號(hào),否則查詢結(jié)果出錯(cuò);當(dāng)使用的英文列名超過(guò)兩個(gè)單詞時(shí),必須使用引號(hào)將列名括起來(lái);可以聯(lián)合使用本節(jié)介紹的3種方法,返回結(jié)果相同。另外,審計(jì)人員還可通過(guò)應(yīng)用函數(shù)方式直接對(duì)表列進(jìn)行操作。如語(yǔ)句:Select sum(jfje), sum(dfje)frompzk該語(yǔ)句是將pzk(憑證庫(kù))中所有憑證的借方發(fā)生額求和和貸方發(fā)生額求和,借以查看pzk表中借貸發(fā)生額是否平衡。6、使用WHERE條件子句。使用WHERE子句的目的是從表的數(shù)據(jù)集中篩選出符合審計(jì)人員設(shè)定條件的行。使用WHERE子句可以限制查詢的范圍,提高查詢效率。使用時(shí)注意WHERE子句必須緊跟FROM子句之后。WHERE子句中的條件表達(dá)式包括算術(shù)表達(dá)式和邏輯表達(dá)式。算術(shù)表達(dá)式:=(等于); (大于);(不等于);?。ú淮笥冢?!=(大于等于); 150 例2:通過(guò)對(duì)摘要字段內(nèi)容的選擇篩選出其中與招待費(fèi)有關(guān)的所有憑證。Select科目編碼,科目名稱,摘要,憑證日期,借方金額,貸方金額 from 憑證庫(kù) where 摘要 like%招待費(fèi)%例3:在憑證庫(kù)中統(tǒng)計(jì)7到12月份現(xiàn)金的借貸發(fā)生總額。Select sum(借方金額) as現(xiàn)金借方發(fā)生總額 , sum(貸方金額) as現(xiàn)金貸方發(fā)生總額from憑證庫(kù)where 科目編碼 like 101% and憑證日期 between #2004-07-01 #and#2004-12-31#例4:從憑證庫(kù)表中篩選出“貸:現(xiàn)金”,且摘要中不含“工資”或“獎(jiǎng)金”或“稿費(fèi)”或“補(bǔ)”或“津貼”或“勞?!被颉案@被颉俺霾睢被颉安盥觅M(fèi)”字段,且現(xiàn)金貸方發(fā)生額大于結(jié)算起點(diǎn)(5000元)的所有記錄。審計(jì)人員可通過(guò)此語(yǔ)句為審查除發(fā)工資、獎(jiǎng)金或借差旅費(fèi)等情況之外,現(xiàn)金使用是否超范圍、超限額。本例是以5000元作為界點(diǎn),具體使用時(shí)也可視其需要做具體修改。如果現(xiàn)在科目不為101,可能對(duì)編碼也要做修改。select * from 憑證庫(kù) where 科目編碼 like 101% and 貸方金額 5000and 摘要 not like %工資% and 摘要 not like %獎(jiǎng)金% and 摘要 not like %稿費(fèi)% and 摘要 not like %補(bǔ)% and 摘要 not like %津貼% and 摘要 not like %勞保% and 摘要 not like %福利% and 摘要 not like %出差% and 摘要 not like %差旅費(fèi)%7、使用BETWHEEN關(guān)鍵字。使用BETWHEEN關(guān)鍵字可以方便地限制查詢數(shù)據(jù)的范圍(即包含在兩個(gè)邊界內(nèi)的值),NOTBETWHEEN (不包含在兩個(gè)邊界內(nèi)的值)。使用BETWHEEN表達(dá)式進(jìn)行查詢的效果可以使用=和和= $10AND商品價(jià)格=$15如果要查商品價(jià)格大于15元和小于10元的商品的代碼、種類和價(jià)格,可用以下查詢:select商品代碼,商品種類,商品價(jià)格fromtitleswhere商品價(jià)格$20也可用:whereNOTBETWHEEN15AND20注意:在使用BETWHEEN 限制查詢數(shù)據(jù)范圍時(shí),同時(shí)包括了邊界值,而使用NOT BETWHEEN進(jìn)行查詢時(shí)沒(méi)有包括邊界值。 8、使用IN關(guān)鍵字。同BETWHEEN關(guān)鍵字一樣,IN關(guān)鍵字的引入也是為方便地限制檢索數(shù)據(jù)的范圍,靈活使用IN關(guān)鍵字,可以用簡(jiǎn)潔的語(yǔ)句實(shí)現(xiàn)較復(fù)雜的查詢。如:selectpz_id,pz_date,pz_fname, pz_zyfromhzkwherestate = 招待費(fèi)orstate =餐費(fèi)orstate =酒水費(fèi)如用IN關(guān)鍵字可替代以上語(yǔ)句:selectpz_id,pz_date,pz_fname, pz_zyfromhzkwherestateIN ( 招待費(fèi) ,餐費(fèi), 酒水費(fèi) )如果要查詢不在列表中的值,可使用NOTIN ,方法同上。9、使用LIKE子語(yǔ)句進(jìn)行模糊查詢。審計(jì)人員往往在實(shí)際應(yīng)用中不一定總是能夠就很快地給出精確的查詢條件,因此經(jīng)常需要根據(jù)一些并不確定的線索來(lái)排查被審數(shù)據(jù),LIKE子句就是用來(lái)進(jìn)行模糊查詢的語(yǔ)句,在LIKE子句使用中,通常與通配符配合使用。SQL提供了四種通配符供用戶實(shí)現(xiàn)復(fù)雜的查詢條件:%(百分號(hào)):表示從0到n 個(gè)任意字符。_(下劃線):表示單個(gè)任意字符。 (封閉方括號(hào)):表示方括號(hào)內(nèi)列出的任意一個(gè)字符。 :表示任意一個(gè)沒(méi)有在方括號(hào)內(nèi)列出的字符。如:where科目名稱like%費(fèi)就是查詢條件以“費(fèi)”結(jié)尾的科目字段。下列將查詢出所有滿足tel_id的前面兩個(gè)字母為“72”、第4個(gè)字母為“”的人員姓名和電話號(hào)碼:Selecttel_lanme,tel_fname,phone,tle_idfromTEL Wheretel_idlike72_% 使用方括號(hào)可以將字符查詢的范圍進(jìn)一步縮小。注意:在LIKE子句的查詢條件中,包含在 中的所有字符都將被考慮進(jìn)去,包括空格在內(nèi),所以要注意在 中末尾含有空格而影響查詢結(jié)果。必須注意的是所有通配符都只有在LIKE子句中才有意義,否則,通配符會(huì)被當(dāng)作普通字符處理。也就是說(shuō)通配符只有跟隨LIKE后才有效。10、使用ORDERBY給數(shù)據(jù)排序Select 語(yǔ)句獲得的數(shù)據(jù)一般是沒(méi)有按規(guī)律進(jìn)行排序的,GROUP 主要是對(duì)表中的信息細(xì)化分組,對(duì)屬于同組信息進(jìn)行統(tǒng)計(jì),一般與函數(shù)一起使用。語(yǔ)法為:Orderbyorderbyexpression ASCDESC ,.n Orderbyexpression:定義用于排序的列??梢允褂枚嗔羞M(jìn)行排序,各列在orderby子句中的順序決定了排序過(guò)程中的優(yōu)先級(jí)。 ASC表示升序, DESC表示降序。默認(rèn)情況下,orderby子句按升序進(jìn)行排列。即默認(rèn)使用ASC關(guān)鍵字,如果特別要求按降序進(jìn)行排序,必須使用DESC關(guān)鍵字。 如果在某一列中使用了計(jì)算列,如對(duì)某一列使用了函數(shù)或者是表達(dá)式,而又希望針對(duì)該列的值進(jìn)行排序,那么必須在orderby 子句中再包含該函數(shù)或表達(dá)式,或使用為該計(jì)算列臨時(shí)分配的列名。GROUP主要是對(duì)表中的信息分組,在分組的基礎(chǔ)上,對(duì)表的信息按組進(jìn)行統(tǒng)計(jì),一般和函數(shù)一起使用。例1:對(duì)憑證庫(kù)中其他應(yīng)收款(113)科目中各末級(jí)科目按科目編碼進(jìn)行分組統(tǒng)計(jì),并將借方金額和貸方金額分別進(jìn)行求和顯示。select 科目編碼 ,sum(借方金額),sum(貸方金額) from 憑證庫(kù) where 科目編碼 like 113%group by 科目編碼例2:在憑證庫(kù)中統(tǒng)計(jì)其他應(yīng)受款(113)中二級(jí)科目(二級(jí)科目長(zhǎng)度為5)的年借方發(fā)生總額和貸方發(fā)生總額。在本例中,可通過(guò)調(diào)整長(zhǎng)度來(lái)控制所求的科目級(jí)別,如果是3就是求其他應(yīng)受款所有借貸方總額,如果是7就是所有的三級(jí)科目借貸方總額。當(dāng)然其具體數(shù)值大小根據(jù)實(shí)際編碼長(zhǎng)度為準(zhǔn)。select left(科目編碼,5),sum(借方金額),sum(貸方金額) from 憑證庫(kù) where 科目編碼 like 113%group by left(科目編碼,5) 例3:上例是對(duì)年度求借貸發(fā)生總額,本語(yǔ)句是求出其他應(yīng)受款(113)中二級(jí)科目的每個(gè)月的借貸發(fā)生總額。同樣改變數(shù)字大小可以
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024鐵路物業(yè)買賣正式協(xié)議文件版B版
- 2025年度海洋資源開發(fā)承包經(jīng)營(yíng)合同3篇
- 商品房銷售合同范本
- 2025年私募基金代持資產(chǎn)清算與分配合同3篇
- 二零二四年度專業(yè)農(nóng)場(chǎng)滅鼠及作物保護(hù)合同2篇
- 2025年度航空航天裝備采購(gòu)合同3篇
- 2025年新能源電動(dòng)車租賃及綠色出行服務(wù)合同范本2篇
- 2025版鋁模回收利用與環(huán)保處理服務(wù)合同4篇
- 二零二五年度環(huán)保節(jié)能設(shè)施安全生產(chǎn)合同范本3篇
- 二零二五年高速公路建設(shè)土石方供應(yīng)合同3篇
- 勞動(dòng)合同續(xù)簽意見(jiàn)單
- 大學(xué)生國(guó)家安全教育意義
- 2024年保育員(初級(jí))培訓(xùn)計(jì)劃和教學(xué)大綱-(目錄版)
- 河北省石家莊市2023-2024學(xué)年高二上學(xué)期期末考試 語(yǔ)文 Word版含答案
- 企業(yè)正確認(rèn)識(shí)和運(yùn)用矩陣式管理
- 分布式光伏高處作業(yè)專項(xiàng)施工方案
- 陳閱增普通生物學(xué)全部課件
- 檢驗(yàn)科主任就職演講稿范文
- 人防工程主體監(jiān)理質(zhì)量評(píng)估報(bào)告
- 20225GRedCap通信技術(shù)白皮書
- 燃?xì)庥邢薰究蛻舴?wù)規(guī)范制度
評(píng)論
0/150
提交評(píng)論