• sql like 多个条件_数据库教程-SQL Server多条件模糊查询


    https://blog.csdn.net/weixin_39541869/article/details/110965999

    c621e7333c0e3379046f98cefc5b4c26.png

    多条件模糊查询

    表单查询是以数据存储管理为基础的信息管理系统各业务功能实现的基础,也是数据库CRUD操作的重点与难点,尤其是多表连接查询、条件查询、分组查询、聚合函数等的综合应用。本文以某一比赛样式要求为基础,对数据表多条件模糊查询进行分析与实现说明,为数据库SQL初学者提供参考。


    问题描述

    多条件模糊查询需求来于项目开发需求,本项目提供信息查询页面如下所示,开发者需要为用户提供多条件模糊查询,具体需求描述如下:

    1b3110dc5d8f165144caecc26e64e5f7.png

    问题需求

    1、能够实现多条件查询,即用户输入用户名、车辆品牌、车架号等条件实现会员信息的检索功能。多条件能够允许部分或者全部条件为空,如全部条件为空则显示会员信息表全部信息。

    2、能够实现模糊查询,即用户输入条件为字段值的一部分,能够检索出包含该字段值的所有信息。如可同时输入姓名关键字李,品牌关键字安,车架号关键字A,即可检索出对应字段包含关键字的记录。支持部分搜索条件为空。


    解决思路

    该需求为条件查询与模糊查询的组合,解决问题的关键在于编写出符合条件的sql查询语句。主要所需解决问题包括以下方面:

    1、条件筛选与多条件

    在SQL数据查询语句中,我们一般通过where条件实现对记录进行筛选,如需要满足多个条件,需要使用逻辑运算符and 和or,其中and是指逻辑与,即同时满足条件,or为逻辑或运算。本例提供多个条件进行查询需要使用逻辑与运算符,即and。

    2、字符匹配查询like

    模糊查询主要借助SQL提供的字符匹配查询功能,通过like与匹配字符串进行对比,找到符合条件的记录。like语句关键内容为通配符的使用,常用通配符包括_与%。其中%表示任意多个任意字符。因此如果查询要求包含某个关键字假设为“头”。则匹配字符描述为"%头%"。

    3、其他问题

    出编写出符合条件的查询语句之外,本例实现过程还需注意当某一个条件用户输入为空时,怎么去编写查询语句。程序执行过程是需要动态根据用户是否填写信息,构造查询语句。完整语句结构应该为where condition 1 and condition2 and condition3。为保证语句结构的统一,我们将用户输入为空时的条件设置为1=1。即恒成立条件。这样统一了所有情况查询语句的结构。如我们不填写车辆品牌搜索信息,构造查询语句如下:

    5b711b45589c239d6c006e99a6e0dab8.png

    查询语句统一结构形式


    实现与测试

    在明确项目任务、所需技术方法等基础上我们可以完成本例开发。本例使用WinForm框架进行开发,前端通过datagridview进行数据的绑定及展示。此部分实现过程不再一一描述,如需完整案例代码关注并私信作者。后台数据表实现描述如下:

    3ca0b7d92141a931fde31f5f8e27d340.png

    数据表userinfor结构描述

    687f4f64d60983c94929f66a343654d7.png

    存储测试数据

    数据表结构及测试数据描述如上图所示,在winForm中设计窗体,定义初始化函数,并编写对应查询按钮点击事件,其中设计窗体如下:

    06340c270a94d3f226c9248481a06eb0.png

    项目窗体设计图

    其中多条件模糊查询部分主要在查询按钮点击事件中编写,部分实现代码描述如下图所示:

    120b020556ac135bc811eb0246c07335.png

    点击鼠标实现多条件模糊查询代码

    实现SQL多条件模糊查询代码如上所示,本例完整测试功能实现描述如下动图所示:

    e69297700c06d60502733c3179dfd8bb.gif

    动态展示


    本头条号长期关注编程资讯分享;编程课程、素材、代码分享及编程培训。如果您对以上方面有兴趣或代码错误、建议与意见,可以联系作者,共同探讨。期待大家关注!相关文章链接如下:

    数据库教程-SQL Server查询结果列转行实现与分析

    数据库教程-SQL Server数据字典查询及导出

  • 相关阅读:
    我读过的书 编程爱好者
    HarmonyOS ListContainer基础用法
    HarmonyOS ListContainer 读取网络json数组
    HarmonyOS Activity页面跳转
    HarmonyOS ListContainer 图文并排
    HarmonyOS 线性布局练习一 登录页面
    jsonserver 环境搭建及使用方法
    HarmonyOS 真机调试
    在win下设置C语言环境变量
    使用 Eclipse 调试 Java 程序的 10 个技巧
  • 原文地址:https://www.cnblogs.com/sunny3158/p/14978782.html
Copyright © 2020-2023  润新知