组合查询

                                                                          组合查询                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:Visual Studio 2015  mvc

作者:卢佳琪

撰写时间:撰写时间:2019年 6月 10日

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  常用到的查询除了模糊查询还有就是组合查询了,模组查询就是单条查询,可以跟根据某一个字某个字母或者某个数子作为判断条件进行模糊的查询,把需要查询所含有的的关键词或是关键字的结果全部查询出来,而组合查询简单的说就是根据多个条件一起查询询,多个条件可以准确地找到某一条数据,也就说所查询的哪条数据同时要满足两个或是多个条件才会查询出来。这种查询查询结果就不出现很多条数据。

   下面做的是协议单位管理的协议组合查询,协议单位的协议有八个字段,分别是协议号,单位名称、联系人、联系电话协议分类、可挂账否、挂账金额、销售员。我们只要拿其中几个关键主要的字段作为判断条件就可以不需要那么多,虽然有很多个字段但是我们也不需要全部用上,如果是那样就会变得更加麻烦了。作为条件的子段一般是拿那些不会为空的字段,如果拿那些会为空的字段作为判断条件那么这一个条件就没什么意义了。

一 、查询

  1. 这个组合查询我做成弹窗的页面,所以首先弹出来模态框,弹出表前要请空这个表单中数据,预防还有残留数据。

$("#modalCombox").modal('show'),//打开模态框

2、查询,先是获取到查询的条件,这里我把协议编号AProtocolNumber、单位名称AUnitName、联系人AContacts、联系电话APhone作为判断条件所一这就就它们所对ID就是判断条件了,获取到这些查询条件我们还要对它一个操作,就是判断判断它们是否为undefined,如果为undefined我就让它为空

 

二、方法重载

这里的表格重载是指对表格重新进行渲染,包括数据的读取和基础参数的读取,这里主要有三个参数第一请求的路径url,第二个参数是设定异步数据接口的额外参数,AProtocolNumber、AUnitName、AContacts、APhone这几个参数传到控制器就,第三个参数是它页数刷新的时候的让它从第一页开始,如果没设置这个参数的时候就会出现疑问题,那就是如果翻到几十页或几百页的时候,刷新只会从当前页面开始而不是从第一页开始就会存在这样一个问题,所以加上这个参数就能解决了这个问题。最后就是关闭模态框

!string.IsNullOrEmpty(ProtocolNumberDetail)前面加了个!表示这个参数ProtocolNumber是个字符串类型不能为空。自定表=自定义表.条件自定义列表=>这个自定义列表的中ProtocolNmber.包含了传过来的ProtocolNmber这个条件,然后查询返回数据,这里是组合查询关键代码

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MyBatis组合查询是指在一个SQL语句中同时查询多个表的数据,可以使用嵌套查询实现。具体步骤如下: 1. 配置多个表的映射文件,分别对应不同的实体类。 2. 在主映射文件中使用`<select>`标签定义SQL语句,使用`<resultMap>`标签定义结果集映射关系。 3. 在`<select>`标签中使用`<include>`标签引入其他映射文件中的SQL语句。 4. 在`<resultMap>`标签中使用`<association>`标签或`<collection>`标签定义关联关系。 下面是一个示例: 引用:假设有两个表,一个是用户表,一个是订单表,一个用户可以有多个订单,订单表中有一个`user_id`字段与用户表中的`id`字段关联。我们可以使用如下的SQL语句实现组合查询: ```xml <select id="getUserWithOrders" resultMap="userWithOrders"> SELECT * FROM user WHERE id = #{id} </select> <resultMap id="userWithOrders" type="User"> <id property="id" column="id"/> <result property="username" column="username"/> <result property="password" column="password"/> <collection property="orders" ofType="Order"> <id property="id" column="id"/> <result property="orderNo" column="order_no"/> <result property="createTime" column="create_time"/> <result property="userId" column="user_id"/> </collection> </resultMap> ``` 在上面的示例中,我们定义了一个`getUserWithOrders`的SQL语句,使用`<include>`标签引入了订单表的查询语句。在`<resultMap>`标签中,我们使用了`<collection>`标签定义了用户与订单之间的一对多关系。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值