会计数据审计分析九大算法实例
- 格式:doc
- 大小:81.00 KB
- 文档页数:10
机器学习技术在会计审计中的应用案例及技巧分享随着信息技术的快速发展,机器学习技术在各个领域的应用越来越广泛。
会计审计作为企业财务管理的重要环节之一,也可以通过引入机器学习技术来提高审计的效率和准确性。
本文将分享一些机器学习在会计审计中的应用案例,并提供一些相应的技巧和建议。
一、机器学习在会计审计中的应用案例1. 异常交易检测会计审计中,异常交易通常会引起审计师的关注,因为它可能暗示着潜在的审计风险。
传统的审计方法主要依靠人工审查报表和交易记录来发现异常交易,但这种方法无法有效处理大规模数据。
机器学习可以通过训练模型来自动识别和分类异常交易,从而减少人为错误和漏检的风险,提高审计效率。
2. 金融欺诈检测金融欺诈是会计审计中非常重要的一个方面。
机器学习可以通过分析大量的历史交易数据,构建欺诈检测模型,自动识别可能存在欺诈行为的交易。
这种方法可以大大提高审计师对欺诈行为的敏感度,及时发现潜在的风险。
3. 会计准则合规性检查会计准则的合规性是审计中的一个重要方面。
机器学习可以通过训练模型来分析企业的财务数据,自动检查会计准则的合规性。
这种方法可以有效避免审计师对会计准则的误解和遗漏,提高审计的准确性。
二、机器学习在会计审计中的技巧分享1. 数据预处理在使用机器学习技术进行会计审计前,需要对原始数据进行预处理。
这包括数据清洗、特征选择和数据转换等步骤。
数据清洗是为了去除异常值和重复值,保证数据的质量和准确性;特征选择是为了选择最具判别能力的特征,提高模型的准确性;数据转换是为了将原始数据转化为机器学习算法可以处理的形式。
2. 模型选择和训练在选择机器学习模型时,需要根据具体的问题和数据特点进行选择。
常见的会计审计问题可以使用的机器学习模型包括决策树、支持向量机和神经网络等。
模型训练需要使用已标注的数据集进行,可以使用交叉验证等方法来评估和选择最佳模型。
3. 模型评估和优化在模型训练完成后,需要对模型进行评估和优化。
审计师如何进行数据分析数据分析是现代审计工作中不可或缺的一部分,能够为审计师提供更深入的洞察和更有效的审计结果。
本文将介绍审计师在进行数据分析时应采取的步骤和方法。
一、审计师在数据分析中的角色审计师在数据分析中起着重要的角色,他们需要收集、整理和分析大量的数据,并从中获取有关企业财务状况和运营情况的相关信息。
数据分析使审计师能够更好地了解企业的风险因素,发现潜在的错误或欺诈行为,并提供客观、可靠的审计意见。
二、数据分析步骤1. 确定目标:审计师在进行数据分析之前,首先需要明确自己的目标。
他们需要确定所需数据的类型和来源,并了解企业的特定需求和要求。
这有助于审计师更好地规划和执行数据分析工作。
2. 收集数据:收集数据是数据分析的关键步骤之一。
审计师需要收集与审计对象相关的数据,包括财务报表、会计记录和其他相关文档。
审计师可以使用数据提取工具或与企业合作,获取所需的数据。
3. 数据清洗与整理:在进行数据分析之前,审计师需要对数据进行清洗和整理,以确保数据质量。
他们应检查数据是否完整、准确,并进行必要的清理工作,如去除重复值、处理缺失数据等。
4. 数据分析方法选择:审计师可根据具体情况选择适合的数据分析方法。
常用的方法包括统计分析、趋势分析、比较分析、异常检测等。
根据审计目标和数据特点,审计师可以综合运用多种方法。
5. 数据分析与解释:进行数据分析后,审计师需要对结果进行解释和分析。
他们可以使用图表、表格等可视化工具,以便更清晰地展示分析结果,并从中提取有用的信息和发现。
6. 结果验证和报告编写:审计师在进行数据分析后,应对结果进行验证,确保结果的准确性和可靠性。
根据分析结果,审计师可以编写审计报告,并提出建议和意见,为企业决策提供参考。
三、数据分析的挑战与解决方法在进行数据分析时,审计师可能面临以下挑战:1. 数据质量问题:数据质量是数据分析的前提条件,而企业数据的准确性和完整性并不总是可靠的。
审计师可以通过数据清洗和验证的方法,提高数据质量。
全样本数据审计案例全样本数据审计案例一、审计计划在开始全样本数据审计之前,我们需要制定详细的审计计划,包括审计目标、审计范围、审计时间、资源分配、风险评估等。
在审计计划中,我们需要明确数据审计的内容和标准,以便后续的数据收集、清洗、分析和异常检测等工作的顺利进行。
二、数据收集在进行全样本数据审计时,我们需要收集所有相关的数据,包括但不限于业务数据、财务数据、人力资源数据等。
在收集数据时,我们需要确保数据的完整性和准确性,同时避免数据泄露和安全问题。
三、数据清洗在数据收集完成后,我们需要进行数据清洗,以去除重复、无效或错误的数据。
数据清洗的目的是提高数据分析的准确性和效率,同时减少异常检测的干扰。
在数据清洗时,我们需要根据数据的特征和实际情况,采取不同的清洗方法和策略。
四、数据分析数据分析是全样本数据审计的核心环节,通过数据分析我们可以发现数据中的规律和异常情况。
在数据分析时,我们需要运用各种数据分析方法和工具,包括统计学、机器学习、数据挖掘等,以提取数据中的有用信息。
五、异常检测异常检测是全样本数据审计的重要环节,通过异常检测我们可以发现数据中的异常点和异常趋势。
在异常检测时,我们需要根据数据的特征和实际情况,制定相应的异常检测策略和模型,以提高异常检测的准确性和效率。
六、风险评估在异常检测完成后,我们需要进行风险评估,以确定异常情况的风险程度和影响范围。
在风险评估时,我们需要综合考虑数据的价值、安全、合规等因素,同时结合公司的实际情况和业务需求,制定相应的风险评估策略和标准。
七、报告生成在完成风险评估后,我们需要生成相应的审计报告,以总结审计结果和提出整改建议。
在报告生成时,我们需要根据审计计划和实际审计情况,编写相应的报告内容和格式,以确保报告的准确性和可读性。
八、整改建议在报告生成后,我们需要向相关部门提出整改建议,以纠正数据问题并防止问题再次发生。
在提出整改建议时,我们需要综合考虑问题的性质、影响范围和整改成本等因素,同时提出切实可行的整改方案和时间表。
财会类价值文档精品发布!
审计查账的九种经典技巧 [会计实务,会计实操]
就一般情况而言,企业的虚假账目或违法行为大都藏匿在如下这九种行为之中,这也是我们审计查账的九种经典技巧:
1、虚设账户从中侵吞公款的查账技巧
虚设账户从中侵吞公款的情况,一般发生在应收、应付货款等往来结算账户上。
如事先将一笔赊销的货款业务记入一个虚设的应收销货款账户上,而不以客户真实名称开立账户,该货款收到后,即将该笔货款侵吞入私囊,然后再采用坏账方法注销该账户。
其查账技巧是:一方面清查应收销货款账户上处理坏账损失的手续是否完备真实;另一方面可通过其他途径进行追查,弄清情况。
2、利用账目混乱浑水摸鱼的查账技巧
利用账目混乱浑水摸鱼的情况,通常发生在会计制度不健全和机构不健全,财务工作无人负责的单位。
其查账技巧首先要清理账目,通过账证、账账和账表的相互核对,清理所有账目,然后采取内查外调来搞清是属于会计业务处理上的问题,还是属于违法违纪舞弊的问题。
3、利用漏账、错账,截留中饱私囊的查账技巧
在往来结算中发生漏账、错账或者原始凭证的计算上发生错误的情况下,因长期无人过问,一直挂在账上,财会人员便可能乘机截留中饱私囊。
一般采用的手法是:将收到的其他现金款项不如实入账,而直接冲销该账户;或者将该账户转入其他应收款账目上所虚拟的暂付款账目后,再开具现金支票,落入私囊,并用以冲平该项虚拟的暂付款账户。
其查账技巧是:前者可通过现金收入凭证与该账户进行核对验证;后者可通过仔细审查其他应收款账目上的暂付账户,即能查清。
二、审计目标与管理当局认定1.报表审计目标:对财务报表整体就是否不存在由于舞弊或错误导致得重大错报获取合理保证,使得注册会计师能够对财务报表就是否在所有重大方面按照适用得财务报告编制发表审计意见,出具审计报告,并与管理层与治理层沟通2、认定与目标联系管理当局认定就是指管理当局在财务报表中做出得明确或隐含得表达,注册会计师将其用于考虑可能发生得不同类型得潜在错报联系,由于注册会计师得主要责任就是确定管理当局得认定就是否恰当,因此审计具体目标沿袭了管理当局认定得主要内容并与管理当局认定得紧密相连3、具体审计目标对应得当局认定“存在果发生”认定–报表金额确实存在或已记录得业务就是真实得“完整性"认定–已经存在得金额或者已经发生!交易已经被记录“计价或分摊”认定–会计要素已恰当得金额记录于报表忠,与之相关得计价或分摊已经恰当记录,已经记录得交易金额正确“权利与义务认定–资产归属于被审计单位“列报"认定–被审计单位资产或负债已按照企业会计准则得规定在财务报表中作出恰当列报三、审计抽样方法得应用1、以每个随机数得前四位为标准,并以第1行第一列数字为起点,为3290 3687 7041;使用后四位则就是?2、数字:632652672系统选样法对总体要求要求总体得特性随意分布在总体内,否则样本可能不具有代表性四:审阅法审阅明细账1、含义:审阅法就是指通过对会凭,会计账簿与会计报表书面资料仔细观察与阅读来查账证据得查账技术方法2、要点:异常金额判断,反映经济活动真实程度,会计账户核算内容与对应关系正确性,时间上判断,要素就是否齐全3、对账簿得审阅:就是否合规;总账,明细账,账簿凭证就是否相符;期初余额,借贷方向,合计数就是否准确;摘要对照金额栏数额审阅五:销售与收款循环关键控制及控制测试1、目标:销货有关权利以记录至应收账款;销货交易均记录于适用当期;退回折让折扣真实发生,均记录;计提坏账准备与核销坏账;收款真实发生;准确记录收款;记录于当期;监督账款及时收回;顾客档案变更真实2、关键控制:以经审核得发运凭证,订单为依据记账;赊购经过批准;销售发票事先编好并记账;每月向顾客对账;销售价格付款条件经授权批准;采用适当科目表3、内控与控制测试:内控就是被审计单位保证业务活动有效进行,保护资产完整,防止错误舞弊,保证会计资料真实合法完整而制定实施得政策与程序注会对单位内控了解,确定执行就是否有效,即控制测试,再评价,确定控制风险水平4、实质性测试:为会计报表每项认定公允性提供证据,披露交易过程中得错报漏报5、销售折让折扣审计程序:获取折扣折让明细表,复核,并与明细账合计数核对;取得相关资料,抽查折扣折让授权批准情况与执行情况核对,检查授权就是否真实合法;折扣折让金额就是否提交对方,有无转移收入,小金库情况;会计处理就是否正确六:应收账款坏账准备审计案例1、函证对象得确定:注册会计师可以运用抽样方式确定函证样本,样本应当足以代表总体,并包括:余额较大项目;坏账账龄较长项目;交易频繁期末余额小得;重大关联方;重大异常交易;存在争议或舞弊函证方式确定:积极;必须回函;消极:不同意才回函2、对于这种情况,注册会计师应结合具体情况考虑其要求就是否合理,注册会计师应评价管理层不允许寄发询证函对评估得相关重大错报风险,以及其她审计程序得性质、时间安排与范围得影响,并且实施替代审计程序,以获取与这些账户余额或其她信息相关得充分适当得审计证据。
审计行业的创新技术与应用案例随着信息技术的快速发展和互联网的普及应用,各行各业都迎来了创新的机遇和挑战,审计行业也不例外。
审计作为一项关键的财务管理工作,其技术和应用也在不断演进和创新。
本文将介绍几个审计行业的创新技术和应用案例,旨在探讨这些技术如何为审计工作带来效率和准确性的提升。
1. 数据分析技术在审计中的应用传统的审计工作主要依赖于人工抽样和手工计算,效率低下且容易出错。
然而,随着大数据时代的到来,数据分析技术为审计工作带来了一次革命。
通过采集、清洗、整理和分析大量的财务数据,审计师可以快速而准确地发现潜在的风险和问题。
一个典型的案例是使用数据分析技术来检测欺诈行为。
审计师可以通过建立模型和算法,对大量的财务数据进行分析,识别出异常的模式和趋势。
通过这种方式,他们能够发现那些隐藏在数据背后的不正常行为,从而及时采取相应的措施。
此外,在合规性审计中,数据分析技术也可以发挥重要作用。
审计师可以通过分析企业的交易数据,检查是否符合合规性要求。
例如,他们可以检查企业在进行与反洗钱政策相关的交易时是否存在违规行为,以及是否存在潜在的洗钱风险。
2. 人工智能技术在审计中的应用人工智能技术是近年来最受关注的技术之一,它在审计行业也有广泛的应用。
人工智能技术的核心是机器学习和自然语言处理,通过模拟人类的智能来处理和分析大量的数据。
在审计工作中,人工智能技术可以用于自动化审计流程。
例如,审计师可以使用人工智能算法来自动进行账目的核对和分析,从而减少人工错误和提高审计结果的准确性。
另外,人工智能技术还可以通过学习审计师的经验和知识,提供更精确的审计建议和意见。
3. 区块链技术在审计中的应用区块链技术作为一种去中心化的、安全的交易记录方式,已经在金融领域得到了广泛应用。
审计行业也开始利用区块链技术来增加审计过程的透明性和可验证性。
一个典型的案例是使用区块链技术来监控供应链的可追溯性。
审计师可以通过建立一个基于区块链的供应链跟踪系统,实时记录和验证各个环节的交易信息。
9种常用的数据分析方法一、公式拆解所谓公式拆解法就是针对某个指标,用公式层层分解该指标的影响因素。
举例:分析某产品的销售额较低的原因,用公式法分解二、对比分析对比法就是用两组或两组以上的数据进行比较,是最通用的方法。
我们知道孤立的数据没有意义,有对比才有差异。
比如在时间维度上的同比和环比、增长率、定基比,与竞争对手的对比、类别之间的对比、特征和属性对比等。
对比法可以发现数据变化规律,使用频繁,经常和其他方法搭配使用。
下图的AB公司销售额对比,虽然A公司销售额总体上涨且高于B 公司,但是B公司的增速迅猛,高于A公司,即使后期增速下降了,最后的销售额还是赶超。
三、A/BtestA/Btest,是将Web或App界面或流程的两个或多个版本,在同一时间维度,分别让类似访客群组来访问,收集各群组的用户体验数据和业务数据,最后分析评估出最好版本正式采用。
A/Btest的流程如下:(1)现状分析并建立假设:分析业务数据,确定当前最关键的改进点,作出优化改进的假设,提出优化建议;比如说我们发现用户的转化率不高,我们假设是因为推广的着陆页面带来的转化率太低,下面就要想办法来进行改进了(2)设定目标,制定方案:设置主要目标,用来衡量各优化版本的优劣;设置辅助目标,用来评估优化版本对其他方面的影响。
(3)设计与开发:制作2个或多个优化版本的设计原型并完成技术实现。
(4)分配流量:确定每个线上测试版本的分流比例,初始阶段,优化方案的流量设置可以较小,根据情况逐渐增加流量。
(5)采集并分析数据:收集实验数据,进行有效性和效果判断:统计显著性达到95%或以上并且维持一段时间,实验可以结束;如果在95%以下,则可能需要延长测试时间;如果很长时间统计显著性不能达到95%甚至90%,则需要决定是否中止试验。
(6)最后:根据试验结果确定发布新版本、调整分流比例继续测试或者在试验效果未达成的情况下继续优化迭代方案重新开发上线试验。
流程图如下:四、象限分析通过对两种及以上维度的划分,运用坐标的方式表达出想要的价值。
审计查账的九种经典技巧【会计实务经验之谈】1、收入不入账、多收少记或少付多记的查账技巧通常发生于财会制度不健全的单位,特别是开票与收款同属于一人最易出现此种现象。
作案人大都是那些直接经手管理财物的人员。
例如采购员、出纳员、仓库保管人员以及收款员等。
这些作案成员有的是开票时,提高单价从中吃回扣或报销后占有,有的是内外勾结一票两开进行贪污,有的是收款后只给交款人开收据不记账,情况比较复杂。
针对这种作案手段,一般应从以下几个方面组织调查:一是应将所有已使用过的发票和收据的存根联都收集起来,检查号码是否连续,有无缺号、缺页以及作废的发票和收据的正联以及入账联是否粘在存根联上,然后对发票和收据存根联的合计数同入账数进行核对,看是否符合。
二是对收款人员和交款人保存的单据相互核对,挤出差额,追去向。
三是笔数、金额相核对,挤差额追去向。
四是从人与人之间,收集人证与其他资料相核对。
五是账实核对,然后进行综合分析,实事求是地加以判断。
2、虚报冒领费用开支的查账技巧这类案件大都发生在直接经手管理财物的人员中,作案手段多种多样。
对这种违纪,主要舞弊手段是伪造、盗用、涂改或重报购货发票和费用单据。
伪造单据常见于利用白条发票或收据,主要有:虚报冒领职工旅差费、临时工工资以及长期支取已死亡职工的退休金等。
对此应从以下几个方面组织调查:一是要组织审查可疑凭证的来源,看所报销的票据是单位还是个人出具的,有没有收款人的手印或印章。
二是要注意审查支出的流向和支出形式是不是人为的从中作弊。
三是带着从账目中审查的疑点,找领款人或领款单位进行核对,去获取有无虚报冒领的依据。
四是对已获取的证据进行技术鉴定,如笔迹、手印、印章等。
3、对开假单据报销的查账技巧这种作案手段大都是直接经管财物的产、供、销人员或金融管理人员,他们在作案时开假单据的形式很多,而且比较复杂,但分析起来不外两种,即合法与非法。
一种是经税务机关登记的有税契的合法形式的发票;另一种是未经有关部门允许而印制的非法发票和白条。
财会类价值文档精品发布!审计查账九种经典技巧解析[会计实务,会计实操]1、收入不入账、多收少记或少付多记的查账技巧通常发生于财会制度不健全的单位,特别是开票与收款同属于一人最易出现此种现象。
作案人大都是那些直接经手管理财物的人员。
例如采购员、出纳员、仓库保管人员以及收款员等。
这些作案成员有的是开票时,提高单价从中吃回扣或报销后占有,有的是内外勾结一票两开进行贪污,有的是收款后只给交款人开收据不记账,情况比较复杂。
针对这种作案手段,一般应从以下几个方面组织调查:一是应将所有已使用过的发票和收据的存根联都收集起来,检查号码是否连续,有无缺号、缺页以及作废的发票和收据的正联以及入账联是否粘在存根联上,然后对发票和收据存根联的合计数同入账数进行核对,看是否符合。
二是对收款人员和交款人保存的单据相互核对,挤出差额,追去向。
三是笔数、金额相核对,挤差额追去向。
四是从人与人之间,收集人证与其他资料相核对。
五是账实核对,然后进行综合分析,实事求是地加以判断。
2、虚报冒领费用开支的查账技巧这类案件大都发生在直接经手管理财物的人员中,作案手段多种多样。
对这种违纪,主要舞弊手段是伪造、盗用、涂改或重报购货发票和费用单据。
伪造单据常见于利用白条发票或收据,主要有:虚报冒领职工旅差费、临时工工资以及长期支取已死亡职工的退休金等。
对此应从以下几个方面组织调查:一是要组织审查可疑凭证的来源,看所报销的票据是单位还是个人出具的,有没有收款人的手印或印章。
二是要注意审查支出的流向和支出形式是不是人为的从中作弊。
三是带着从账目中审查的疑点,找领款人或领款单位进行核对,去获取有无虚报冒领的依据。
四是对已获取的证据。
内部审计探索研究型审计典型实践案例内部审计探索研究型审计典型实践案例:1. 利用大数据分析技术进行业务流程审计:该案例中,审计团队使用大数据分析技术对公司的业务流程进行审计,通过分析海量数据,发现了一些潜在的风险和问题,为公司的业务流程改进提供了有效的参考。
2. 利用人工智能技术进行财务审计:该案例中,审计团队利用人工智能技术对公司的财务数据进行审计,通过机器学习算法,自动识别出潜在的审计问题和异常数据,提高了审计效率和准确性。
3. 利用控制自评技术进行内部控制审计:该案例中,审计团队采用控制自评技术对公司的内部控制进行审计,通过自评表和自评报告的编制和审核,发现了一些潜在的内部控制问题,为公司的内部控制改进提供了有效的参考。
4. 利用数据挖掘技术进行风险评估:该案例中,审计团队采用数据挖掘技术对公司的业务数据进行分析和挖掘,识别出了一些潜在的风险和问题,为公司的风险管理提供了有效的参考和决策支持。
5. 利用网络安全技术进行信息系统审计:该案例中,审计团队采用网络安全技术对公司的信息系统进行审计,发现了一些潜在的安全漏洞和风险,为公司的信息安全管理提供了有效的参考和建议。
6. 利用预测模型技术进行预测分析:该案例中,审计团队采用预测模型技术对公司的业务数据进行预测分析,发现了一些潜在的趋势和变化,为公司的业务决策提供了有效的参考和预测支持。
7. 利用社交网络分析技术进行人员审计:该案例中,审计团队采用社交网络分析技术对公司的人员进行审计,发现了一些潜在的关系和行为问题,为公司的人员管理提供了有效的参考和建议。
8. 利用模拟技术进行方案评估:该案例中,审计团队采用模拟技术对公司的决策方案进行评估,发现了一些潜在的问题和改进点,为公司的决策管理提供了有效的参考和建议。
9. 利用风险管理技术进行风险控制审计:该案例中,审计团队采用风险管理技术对公司的风险控制进行审计,发现了一些潜在的风险和问题,为公司的风险控制管理提供了有效的参考和建议。
- 1 - /*第七章 7.2九大算法实例*/ /*第一算法 查记账凭证的算法 知识点:查的是记账凭证而不是明细账。一张凭证是多条记录的集合,而记录只是一条 解题规则:一个条件二张表,二个条件三张表,三个条件四张表。*/ --分析:从题意看只有一个决定条件,即科目为主营业务收入,所以要用二张表相连,a表是查询结果凭证,用b表设条件。 --例:检索出所有现金支出为整千元的记账记录。 Select * from gl_accvouch where ccode='101' and abs(mc%1000)=0 and mc<>0
--例:检索出所有现金收支大于1000元的记账凭证。 Select b.* from gl_accvouch a join gl_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where a.ccode='101' and (a.md>1000 or a.mc>1000)
--例:检索出所有凭证的现金科目的对应科目的科目代码、科目名称、借方发生额、贷方发生额。(????) select a.iperiod,a.csign ,a.ino_id,a.ccode,b.ccode_name,a.md,a.mc from GL_accvouch a join code b on a.ccode=b.ccode where a.ccode_equal like '%,101%' or a.ccode_equal like '101%' order by a.iperiod,a.csign ,a.ino_id,a.ccode
select a.ccode 科目代码,ccode_name 科目名称,SUM(md) 借方发生额,SUM(mc) 贷方发生额 from GL_accvouch a join code b on a.ccode=b.ccode where ccode_equal like '%,101%' or ccode_equal like '101%' group by a.ccode,ccode_name
/*第二算法 赊销算法,借方一个科目,贷方一个科目。如借 应收账款/票据 贷:主营业务收入/产品销售收入 查凭证比查记录多张表。*/ --分析:从题意看有二个条件,即凭证中要有应收科目和主营业务收入科目,所以要三张表,a 表是查询结果凭证, --------b表设应收条件,c表设主营业务收入条件。 --例:检索出所有赊销收入明细账记录。赊销:已销售,没收到钱。 --第一种方式 可以利用产品销售收入的对应科目code_equal来完成 select * from GL_accvouch where ccode='501' and ccode_equal like '%113%' and mc<>0 order by iperiod,csign,ino_id
--第二种方式 内连接方式,求两个集合的交集运算,检查两个表中的共有内容。显示的是记录而不是凭证。 Select a.* from gl_accvouch a join gl_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where a.ccode='501' and b.ccode='113' and a.mc<>0 order by a.iperiod,a.csign,a.ino_id
--例:检索出所有赊销收入明细账凭证。或查找各月赊销凭证 --第一种方式 两表连接 select a.* from GL_accvouch a join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where b.ccode='501' and b.ccode_equal like '%113%' and b.mc<>0 - 2 -
order by a.iperiod,a.csign,a.ino_id --第二种方式 三表连接 select a.* from GL_accvouch a join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id join GL_accvouch c on c.iperiod=b.iperiod and c.csign=b.csign and c.ino_id=b.ino_id where b.ccode like '501%' and c.ccode like '113%' and C.md<>0 and b.mc<>0 order by a.iperiod,a.csign,a.ino_id
--例:查找各月赊销收入总额 select a.iperiod 期间,SUM(a.mc) 收入总额 from GL_accvouch a join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where a.ccode like '501%' and b.ccode like '113%' and b.md<>0 and a.mc<>0 group by a.iperiod
select iperiod ,SUM(mc) 收入总额 from GL_accvouch where ccode ='501' and ccode_equal like '%113%' group by iperiod
--例:查找各月现销记录 select a.* from GL_accvouch a join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where a.ccode like '101%' and b.ccode like '501%' and a.md<>0
select * from GL_accvouch a where a.ccode ='101' and a.ccode_equal like '%501%' and md<>0
--例:查找各月现销凭证 select a.* from GL_accvouch a join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id join GL_accvouch c on c.iperiod=b.iperiod and c.csign=b.csign and c.ino_id=b.ino_id where b.ccode like '501%' and (c.ccode like '101%' or c.ccode like '102%') and C.md<>0 and b.mc<>0
--例:查找各月现销收入,分析:统计各月通过现结方式的现金收入。 select a.iperiod 期间,SUM(a.md) 收入 from GL_accvouch a join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where (a.ccode like '101%' or a.ccode like '102%') and b.ccode like '501%' and a.md<>0 and b.mc<>0 group by a.iperiod
--例:计算各月收回的销售欠款(应收账款)累计发生额。分析:应收账款是113,何谓收回,即113在贷方,借方应为101、102 select a.iperiod 期间,a.ccode,sum(a.mc) mc,SUM(a.md) md from GL_accvouch a - 3 -
join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where (a.ccode like '101%' or a.ccode like '102%') and b.ccode like '113%' and a.md<>0 group by a.iperiod,a.ccode
--例:计算各月收回的销售欠款(应收账款)凭证。分解条件:此凭证借方应为现金或银行存款,贷方为113,要查找凭证 select a.* from GL_accvouch a join gl_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id join GL_accvouch c on c.iperiod=b.iperiod and c.csign=b.csign and c.ino_id=b.ino_id where (b.ccode like '101%' or b.ccode like '102%') and b.md<>0 and c.ccode like '113%' and c.mc<>0 order by a.iperiod,a.csign,a.ino_id
select a.* from GL_accvouch a join GL_accvouch b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where (b.ccode like '101%' or b.ccode like '102%') and b.md<>0 and (b.ccode_equal like '113%' or b.ccode_equal like '%,113%')
/*第三算法 登记一个科目,末登记一个科目的算法。使用外连接left(right) join。 实现两个集合的差集运算。找出一个集合中存在而另一个集合不存在的内容*/ --例:检查所有确认收入时,未同时提取应交税金的销售收入明细账记录。 ------分析:先查询凭证中有主营业务收入,再左连接所有提取了应交税金的记录,而右表中为空的即为未提取应交税金的记录。 select a.* from (select * from GL_accvouch where ccode like '501%' and mc<>0) a left join (select * from GL_accvouch where ccode like '221%' and mc<>0) b on a.iperiod=b.iperiod and a.csign=b.csign and a.ino_id=b.ino_id where b.iperiod is null