SQL查询操作

有7个筛选条件任意一个条件都可以筛选。采用LINQ查询比较繁琐,且操作步骤增加,选择用SQL判断。

 public DataTable GetData(string cboCld, string cboFact,string cboPrtN,string  txtbCde,string txtbDce,string txtbPdt,string txtbRID)
        {
            string strSql = @"select distinct l.Area,l.Facility ,m.vdpartno,l.PartNo,l.ReelID,l.Qty ,l.Location,l.datecd,l.prodcd,l.vendorcd,l.lmdate from VMIReelShelfDetail l
left JOIN smtitem  m
ON m.partno  = l.partno
where l.ReelID <>‘‘";
            if (cboCld != "ALL")
            {
                strSql = strSql + " AND  l.Area=‘" + cboCld + "‘";
            }
            if (cboFact != "ALL")
            {
                strSql = strSql + " AND  l.Facility=‘" + cboFact + "‘";
            }
            if (cboPrtN != "ALL")
            {
                strSql = strSql + " AND  l.PartNo=‘" + cboPrtN + "‘";
            }
            if (txtbCde != "")
            {
                strSql = strSql + " AND  l.vendorcd=‘" + txtbCde + "‘";
            }
            if (txtbDce != "")
            {
                strSql = strSql + " AND  l.datecd=‘" + txtbDce + "‘";
            }
            if (txtbPdt != "")
            {
                strSql = strSql + " AND  l.prodcd=‘" + txtbPdt + "‘";
            }
            if (txtbRID != "")
            {
                strSql = strSql + " AND  l.ReelID=‘" + txtbRID + "‘";
            }
            return SqlHelper.Query(strSql);
        }

通过判断这几个界面上的文本框和复选框,来追加SQL中的查询条件最为方便 且简单。

原文地址:https://www.cnblogs.com/cdjbolg/p/11771783.html

时间: 2024-10-10 14:40:08

SQL查询操作的相关文章

SQL查询操作处理流程

这里看到书上讲述SQL的查询处理,在SQL中查询是通过select语句以及一些辅助的子句来实现需要的输出,这里使用的是mysql,首先,要理解物理表和虚拟表的区别,物理表就是存储在文件系统上的一个或者多个文件,按照相应的存储数据结构将每一行的数据存储,虚拟表是我们在物理表的基础上构建出来的,可能是全部的表结构,也可能是表中的部分字段或者部分行,甚至可能是表中某些字段经过某种运算之后的结果.但是SQL语言不像C/C++/JAVA这类语言一样,它们的主要区别在于SQL给你一个需求,不关心它是怎么实现

SQL查询操作及子句优先级

用source .sql文件竟然可以自动建表. 简单数据查询: select * from table_name; 避免重复查询: select distinct(field_name) from table_name; 实现简单的数学四则运算: select 1*2; select 10 MOD 3; select field_name*2 from table_name; 实现字符串连接: select concat("hello","world"); sele

LINQ:开始使用 LINQ(四)- LINQ 查询操作的类型关系

开始使用 LINQ(四)- LINQ 查询操作的类型关系 LINQ 查询操作在数据源.查询本身及查询执行中是强类型的.查询中变量的类型必须与数据源中元素的类型和 foreach 语句中迭代变量的类型兼容.此强类型保证在编译时捕获类型错误,以便可以在用户遇到这些错误之前更正它们. 一.不转换源数据的查询 下图演示不对数据执行转换的 LINQ to Objects 查询操作.源包含一个字符串序列,查询输出也是一个字符串序列. 数据源的类型参数决定范围变量的类型. 选择的对象的类型决定查询变量的类型.

SQL查询 thinkphp

http://doc.thinkphp.cn/manual/query.html SQL查询 ThinkPHP内置的ORM和ActiveRecord模式实现了方便的数据存取操作,而且新版增加的连贯操作功能更是让这个数据操作更加清晰,但是ThinkPHP仍然保留了原生的SQL查询和执行操作支持,为了满足复杂查询的需要和一些特殊的数据操作,SQL查询的返回值因为是直接返回的Db类的查询结果,没有做任何的处理.主要包括下面两个方法:1.query方法 query  执行SQL查询操作 用法 query

C#参数化执行SQL语句,防止漏洞攻击本文以MySql为例【20151108非查询操作】

为什么要参数化执行SQL语句呢? 一个作用就是可以防止用户注入漏洞. 简单举个列子吧. 比如账号密码登入,如果不用参数, 写的简单点吧,就写从数据库查找到id和pw与用户输入一样的数据吧 sql:select id,pw where id='inputID' and pw='inputPW'; 一般情况没什么问题,但如果用户输入的id或PW带 ‘ ,这是可能就会出现漏洞,bug了 比如用户输入的id是: 1‘ or ’1‘=‘1 这是sql语句执行的是:select id,pw where id

EF Core中执行Sql语句查询操作之FromSql,ExecuteSqlCommand,SqlQuery

一.目前EF Core的版本为V2.1 相比较EF Core v1.0 目前已经增加了不少功能. EF Core除了常用的增删改模型操作,Sql语句在不少项目中是不能避免的. 在EF Core中上下文,可以返货DbConnection ,执行sql语句.这是最底层的操作方式,代码写起来还是挺多的. 初次之外 EF Core中还支持 FromSql,ExecuteSqlCommand 连个方法,用于更方便的执行Sql语句. 另外,目前版本的EF Core 不支持SqlQuery,但是我们可以自己扩

mybatis中sql语句查询操作

动态sql where if where可以自动处理第一个and. <!-- 根据id查询用户信息 --> <!-- public User findUserById(int id); --> <select id="findUserById" parameterType="user" resultType="user"> select * from user <!-- 当有if条件成立时,where会自

关于pgsql 的json 和jsonb 的数据查询操作笔记整理

关于pgsql 的json 和jsonb 的数据处理笔记 1. json 和jsonb 区别两者从用户操作的角度来说没有区别,区别主要是存储和读取的系统处理(预处理)和耗时方面有区别.json写入快,读取慢,jsonb写入慢,读取快. 2. 常用的操作符 操作符: -> // 右边传入整数(针对纯数组),获取数组的第n个元素,n从0开始算,返回值为json 示例: select '[{"a":"foo"},{"b":"bar&qu

提高SQL查询效率

1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放