SQL语句在审计中的简单应用.doc
文本预览下载声明
SQL语句在审计中的简单应用
SELECT语句是SQL语言中使用频率最高的语句,完全可以说SELECT语句是SQL的灵魂。SELECT语句的作用就是让数据库服务器根据用户的要求搜索出所需要的信息资料,并按规定的格式进行整理,再返回给用户。在计算机审计中,面对繁杂的数据,可以充分利用SQL语句对数据进行筛选和比较,提取组成我们可用的审计中间表,大大提高审计效率。
SELECT 指明要检索的数据的列。
FROM 指明从哪(几)个表中检索行。
WHERE 指明返回数据必须满足的标准(条件)。
GROUP BY 对于集合查询,指明返回的列数据通过这些列来形成组(分组查询)。
HAVING 对于集合查询,指明返回的集合值必须满足的标准。
ORDER BY 指明返回的排序顺序(排序查询)。
⑴简单查询数据库表hzbb中的以下几列,并将查询结果的每一行都返回在选定列中显示,可用以下SQL语句表示:
SELECT id, lname, fname, state, zip, contract FROM hzbb
(前面的列名即字段名如用*表示所有列) 即为:SELECT * FROM hzbb
⑵添加WHERE条件子句,以缩小检索范围。如只返回显示state列中含有‘CA’字符,并且同时满足contract列中值为0的报有记录(行)。可用以下SQL语句表示:
SELECT id, lname, fname, state, zip, contract
FROM hzbb
WHERE state =‘CA’AND contract = 0
(逻辑操作符AND表示与的意思,而OR表示或的意思,如使用AND则返回的行必须满足AND两边的条件,OR操作符则要求OR两边至少满足一个条件)
SELECT select_list[ INTO 新表名 ] FROM表一 ,[表二]…… [ WHERE 条件表达式 ] [ GROUP BY 分组列 ] [ HAVING 指定组或聚合应满足的搜索条件] [ ORDER BY指定要排序的列[ ASC(升序)| DESC(降序)] ]
二、审计实务中的SQL例句说明
如:select * from 凭证库 该语句表示选择凭证库(表)中所有列的记录。
2、使用TOP关键字用于指定只返回前面一定数量的数据。当查询到的数据非常多(如有100万行),但又没有必要对所有数据进行浏览时,使用TOP关键字可以大大减少查询的时间。
如: SELECT TOP 20 FROM HZK 表示从数据库HZK中返回前面20行的数据。
SELECT TOP 20 PERCENT FROM HZK 表示从数据库表HZK中搜索返回前20%的数据。
3、使用DISTINCT关键字。
使用DISTINCT关键字可从返回的结果数据集合中删除重复的行,使返回的结果更加简洁。如:select distinct 科目编码from 凭证库,该语句表示从凭证库中选择科目编码以及使用distinct关键字后去掉那些重复的科目编码,使每个科目编码都是唯一。
注意:在使用DISTINCT关键字后,如果表中存在多个NULL的数据,服务器将会把这些数据视为相等。
4、灵活运用SQL语句使用计算列。
在进行审计数据分析和查询时经常需要对查询的数据进行再计算,这里审计人员可充分运用SELECT语句的功能来直接使用计算列对审计数据进行运算,而计算列并不存在于表格所存储的数据中,它是通过对某些列的数据进行计算而得出的结果列。
由于计算列没有列名,所以返回的结果看不到它的字段名字。在计算列上,允许使用+、-、*、/、%和逻辑运算符。
5、操作查询的列名。
SELECT语句可以根据实际的需要对查询数据的列标题进行修改,或者为设立没有标题的列增加临时的标题。对列名进行操作的方法有三种:
一是在列表达式后面直接给出列名。SELECT title_id ‘商品代号’, price‘原价’, price – price * 0.3‘现价’FROM title
二是使用SQL支持的“=”符号来连接列表达式。SELECT ‘商品代号’=title_id , ‘原价’=price, ‘现价’=price – price * 0.3 from title
三是在指定列标题时,使用AS关键字来连接列表达式和指定的列名。SELECT title_id AS‘图书代号’, price AS‘原价’, price – price * 0.3 AS ‘现价’ FROM title
以
显示全部