`

SQL 中using 的用法

阅读更多

CREATE OR REPLACE PROCEDURE tP_JCXX_SECOND(CUR_RESULT OUT sys_refcursor,
                        TJFS IN VARCHAR2,--统计方式

                        NSPQ IN VARCHAR2,--片区

                        NSRZT IN VARCHAR2,--纳税人状态

                        XXHD IN VARCHAR2,--信息核定

                        NSRDZDAH IN VARCHAR2,--计算机代码

                        NSRMC IN VARCHAR2,--纳税人名称

                        SGY IN VARCHAR2--税管员

                        ) IS
    SQL_STATEMENT VARCHAR2(2000);
    SQL_STATEMENT1 VARCHAR2(2000);
    SQL_STATEMENT2 VARCHAR2(2000);
    BEGIN
        
   
     SQL_STATEMENT1:=
    'SELECT A.NSRDZDAH JSJDM,--计算机代码
     A.NSRMC NSRMC,--纳税人名称
     E.ZCZB ZCZJ,--注册资金
     F.HYMX_MC HY,--行业
     G.DJZCLX_MC DJZCLX,--登记注册类型
     A.SCJYDZ JYDZ,--经营地址
     E.SCJYD_DHHM JYDZDH,--经营地址电话
     H.NSRZT_MC NSRZT,--纳税人状态
     A.GDGGBZ GGH,--是否是共管户
     I.SWJG_MC SWJG,--税务机关
     J.CZRY_MC SGY--税管员
     FROM GY_NSRXX A,HD_NSR_HDXX B,GL_PQ_NSR C,DM_HDXL D,GY_NSRXX_KZ E,
     DM_HYMX F,DM_DJZCLX G,DM_NSRZT H,DM_SWJG I,DM_CZRY J
     WHERE A.NSRDZDAH=B.NSRDZDAH
     AND A.NSRDZDAH=C.NSRDZDAH
     AND B.HDXL_DM=D.HDXL_DM
     AND A.NSRDZDAH=B.NSRDZDAH
     AND A.HYMX_DM=F.HYMX_DM
     AND A.DJZCLX_DM=G.DJZCLX_DM
     AND A.NSRZT_DM=H.NSRZT_DM
     AND A.SWJG_DM=I.SWJG_DM
     AND A.ZGSWRY_DM=J.CZRY_DM
     AND C.PQ_DM IN (NVL(:NSPQ,C.PQ_DM))
     AND B.HDXL_DM IN (NVL(:XXHD,B.HDXL_DM))
     AND A.NSRZT_DM IN (NVL(:NSRZT,A.NSRZT_DM))
     AND A.NSRDZDAH IN (NVL(:NSRDZDAH,A.NSRDZDAH))
     AND A.ZGSWRY_DM IN (NVL(:SGY,A.ZGSWRY_DM))';
     SQL_STATEMENT2:='AND B.HDXL_DM LIKE SUBSTR(:TJFS,2)'||'%';
     IF(SUBSTR(TJFS,1,2)='03') THEN
     SQL_STATEMENT:=SQL_STATEMENT1||SQL_STATEMENT2;
    
     OPEN CUR_RESULT FOR
     SQL_STATEMENT using NSPQ,XXHD,NSRZT,NSRDZDAH,SGY,TJFS;
    
     ELSE
     SQL_STATEMENT:=SQL_STATEMENT1;
     OPEN CUR_RESULT FOR
     SQL_STATEMENT using in NSPQ, in XXHD, in NSRZT,in NSRDZDAH,in SGY;
    
     END IF;
     --DBMS_OUTPUT.Put(SQL_STATEMENT);

    END tP_JCXX_SECOND;

分享到:
评论

相关推荐

    Oracle中Using用法

    在 Oracle 中,使用 Using 语句可以实现动态 SQL 的绑定变量,提高 SQL 语句的灵活性和安全性。本文将对 Oracle 中 Using 用法进行详细的介绍,并提供实际开发的示例和技巧。 一、静态 SQL 和动态 SQL 在 Oracle ...

    SQLTracker监视使用Oracle数据库的应用程序

    SQLTracker是一款专为监视使用Oracle数据库的应用程序设计的工具,尤其在Windows 7和Windows 10 64位操作系统上表现出色。该工具的主要目标是帮助系统管理员、DBA(数据库管理员)以及开发人员更好地理解和优化应用...

    SQL中in参数化的用法

    SQL 中 IN 参数化的用法详解 在 SQL 中,对于 IN 操作符的使用是非常常见的,特别是在 WHERE 子句中规定多个值时。如:select * from A where ID in (1,2,3,4)。但是在实际开发中,我们不可避免地需要处理大量的...

    Proc SQL by Example, Using SQL within SAS

    综述了三种主要的集合操作符——UNION、INTERSECT和EXCEPT的特性和使用方法,并举例说明了它们各自的应用场景。 #### 6.6 UNION 深入探讨了UNION操作符的功能和使用技巧,包括如何使用UNION来合并多个查询结果集。...

    Data Analysis Using SQL and Excel

    SQL(结构化查询语言)作为数据库管理的标准语言,Excel则是办公自动化软件中最常用的数据处理工具之一,两者的结合使用可以极大地提高数据分析的效率和准确性。 #### 二、SQL在数据分析中的应用 **1. SQL基础** ...

    oracle-dynamic-SQL.rar_oracle_sql中dynamic用法

    在这个例子中,我们首先声明一个变量v_sql存储SQL语句,然后使用EXECUTE IMMEDIATE执行SQL,并将结果绑定到变量employee_record。注意,':1'是绑定变量的占位符,USING子句用于传入实际值。 2. PREPARE/EXECUTE...

    SQL语句大全(很全)sql语句用法

    ### SQL语句大全详解 #### 一、概述 SQL(Structured Query Language)是一种用于管理关系...以上是对SQL语句大全的详细介绍,涵盖了常见的SQL语句及其使用方法,旨在帮助数据库开发者和管理员更好地管理和操作数据。

    Manipulating_SQL_Server_Using_SQL_Injection.7z

    5. **防御策略**:介绍防止SQL注入的方法,如参数化查询、输入验证、存储过程使用、Web应用防火墙等,以及如何在开发过程中实施最佳实践。 6. **应急响应**:讲解在遭受SQL注入攻击后的应对措施,包括日志审查、...

    sql操作及公共方法

    总结起来,"sql操作及公共方法"这个主题涵盖了在C#中使用ADO.NET进行数据库操作的基本概念,以及如何通过创建可重用的公共方法来提升代码质量。理解并熟练掌握这些技术,将使你在开发基于C#的数据库应用程序时更具...

    C#SqlParameter参数写法

    下面将详细介绍如何使用`SqlParameter`以及其在SQL查询执行中的具体作用。 ### C# SqlParameter 参数详解 `SqlParameter`类是用于存储SQL参数的.NET Framework类。在进行数据库操作时,它能有效地防止SQL注入攻击...

    C#如何操作SQL中的Image类型数据

    在SQL Server中,`Image`数据...以上就是使用C#操作SQL Server中`Image`类型数据的基本方法。理解这些概念和步骤后,你将能够自如地进行读取、写入和其他相关操作。记得在实际开发中根据具体需求进行适当调整和优化。

    将图片保存到数据库sql中

    接下来,我们需要使用ADO.NET库连接到SQL数据库,并将图片的二进制数据插入到`Images`表中: ```csharp using System.Data.SqlClient; // SQL Server连接字符串 string connectionString = "Data Source=your_...

    SqlServer调用C#DLL的方法

    - 在项目中添加一个类,并使用`SqlFunction`特性标记需要被SqlServer调用的方法。 - 示例: ```csharp using System; using Microsoft.SqlServer.Server; public static class Encrypt { [SqlFunction] ...

    from-sql-to-excel-using-sql-statments.rar_excel sql_sql server e

    标题中的"from-sql-to-excel-using-sql-statements"暗示了我们将探讨如何利用SQL语句将数据从SQL Server数据库导出到Excel电子表格。在IT领域,这是一项常见的任务,尤其是在数据分析和报告生成中。SQL(结构化查询...

    封装sql类方法

    在上述方法中,我们使用`SqlParameter`对象传递参数。例如: ```csharp SqlParameter param = new SqlParameter("@paramName", SqlDbType.VarChar); param.Value = paramNameValue; ExecuteNonQuery...

    C#中读取sql server的数据,并在datagridview中显示

    代码示例中使用了`SqlCommand`类来定义SQL查询命令,其构造函数接受一个SQL语句作为参数: ```csharp using(SqlCommand command = conn.CreateCommand()) { command.CommandText = "select * from gongneng"; } ``...

    wildcard_attacks(利用SQL通配符进行DOS攻击)

    通配符攻击是一种利用SQL Server的特定特性来进行DOS攻击的方法,通过精心构造的搜索查询来过度消耗服务器资源,导致正常的服务请求无法得到响应。为了防范这类攻击,开发者应当注意限制搜索查询中的通配符使用,...

Global site tag (gtag.js) - Google Analytics