QSqlQueryModle使用过滤器来完成数据库数据筛选

2023-11-14

原型

void QSqlTableModel::setFilter(const QString &filter)

注意

如果模型已从数据库中填充数据,则模型将其与新滤波器重新选择。否则,将在调用下一次select()中应用过滤器
model的select()会在筛选和排序的条件下,将数据库中符合要求的在mode表格中显示出来

完全匹配查询

1、普通字符串查询
普通字符串,当使用参数的时候必须注意在参数前后加上单引号:

model->setFilter(QObject::tr(“dCode=%1’”).arg(str));

2、数值查询

model->setFilter(QObject::tr(“dCount=%1).arg(cunt));

3、时间查询
时间查询尤其在QT中的QDataTime要将其转换为字符串后进行查询,查询语法与普通字符相同。

模糊查询

1、首字模糊查询

QString filterstr=QObject::tr(“cName like ‘%1%’”).arg(arg1);
model->setFilter(filterstr);

2、任意字模糊查询

QString filterstr=QObject::tr(“cName like ‘%%1%’”).arg(arg1);
model->setFilter(filterstr);

3、两个并列条件模糊查询

QString filterstr=QObject::tr("(cName like ‘%1%’) AND (cPhone like ‘%1%’)").arg(arg1);
model->setFilter(filterstr);

```cpp
4、两个或条件模糊查询
```cpp
QString filterstr=QObject::tr("(cName like ‘%1%’) OR (cPhone like ‘%1%’)").arg(arg1);
model->setFilter(filterstr);

setSort

排序操作。按照列和Qt::SortOrder排序。Qt::SortOrder有升序和降序

void QSqlTableModel::setSort ( int column, Qt::SortOrder order )

参数:

  • column
    排序的列
  • enum Qt::SortOrder
    排序规则
    Qt::AscendingOrder 升序
    Qt::DescendingOrder 降序

设置完排序以后,调用select()刷新数据

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QSqlQueryModle使用过滤器来完成数据库数据筛选 的相关文章

  • python 中的代表

    我实现了这个简短的示例来尝试演示一个简单的委托模式 我的问题是 这看起来我已经理解了委托吗 class Handler def init self parent None self parent parent def Handle self
  • 如何正确地将 MIDI 刻度转换为毫秒?

    我正在尝试将 MIDI 刻度 增量时间转换为毫秒 并且已经找到了一些有用的资源 MIDI Delta 时间刻度到秒 http www lastrayofhope co uk 2009 12 23 midi delta time ticks
  • 将数据帧行转换为字典

    我有像下面的示例数据这样的数据帧 我正在尝试将数据帧中的一行转换为类似于下面所需输出的字典 但是当我使用 to dict 时 我得到了索引和列值 有谁知道如何将行转换为像所需输出那样的字典 任何提示都非常感激 Sample data pri
  • Argparse nargs="+" 正在吃位置参数

    这是我的解析器配置的一小部分 parser add argument infile help The file to be imported type argparse FileType r default sys stdin parser
  • Pandas 中允许重复列

    我将一个大的 CSV 包含股票财务数据 文件分割成更小的块 CSV 文件的格式不同 像 Excel 数据透视表之类的东西 第一列的前几行包含一些标题 公司名称 ID 等在以下列中重复 因为一家公司有多个属性 而不是一家公司只有一栏 在前几行
  • 如何计算numpy数组中元素的频率?

    我有一个 3 D numpy 数组 其中包含重复的元素 counterTraj shape 13530 1 1 例如 counterTraj 包含这样的元素 我只显示了几个元素 array 136 129 130 103 102 101 我
  • 切片 Dataframe 时出现 KeyError

    我的代码如下所示 d pd read csv Collector Output csv df pd DataFrame data d dfa df copy dfa dfa rename columns OBJECTID Object ID
  • 以同步方式使用 FastAPI,如何获取 POST 请求的原始正文?

    在中使用 FastAPIsync not async模式 我希望能够接收 POST 请求的原始 未更改的正文 我能找到的所有例子都显示async代码 当我以正常同步方式尝试时 request body 显示为协程对象 当我通过发布一些内容来
  • 使用 Python pandas 计算调整后的成本基础(股票买入/卖出的投资组合分析)

    我正在尝试对我的交易进行投资组合分析 并尝试计算调整后的成本基础价格 我几乎尝试了一切 但似乎没有任何效果 我能够计算调整后的数量 但无法获得调整后的购买价格有人可以帮忙吗 这是示例交易日志原始数据 import pandas as pd
  • 为什么在 Python 2.4 中使用 Unicode 数据会出现 ASCII 编码错误,而在 2.7 中却不会?

    我有一个程序 当在 Python 2 7 中运行时 会生成正确的 Unicode 输出到标准输出 当在 Python 2 4 中运行时 我得到UnicodeEncodeError ascii codec can t encode chara
  • Python urllib.request.urlopen:AttributeError:'bytes'对象没有属性'data'

    我正在使用 Python 3 并尝试连接到dstk 我收到错误urllib包裹 我对SO进行了很多研究 但找不到与这个问题类似的东西 api url self api base street2coordinates api body jso
  • 从 python 发起 SSH 隧道时出现问题

    目标是在卫星服务器和集中式注册数据库之间建立 n 个 ssh 隧道 我已经在我的服务器之间设置了公钥身份验证 因此它们只需直接登录而无需密码提示 怎么办 我试过帕拉米科 它看起来不错 但仅仅建立一个基本的隧道就变得相当复杂 尽管代码示例将受
  • 如何设置 Celery 来调用自定义工作器初始化?

    我对 Celery 很陌生 我一直在尝试设置一个具有 2 个独立队列的项目 一个用于计算 另一个用于执行 到目前为止 一切都很好 我的问题是执行队列中的工作人员需要实例化一个具有唯一 object id 的类 每个工作人员一个 id 我想知
  • 按元组分隔符拆分列表

    我有清单 print L I WW am XX newbie YY ZZ You WW are XX cool YY ZZ 我想用分隔符将列表拆分为子列表 ZZ print new L I WW am XX newbie YY ZZ You
  • 在 pytube3 中获取 youtube 视频的标题?

    我正在尝试构建一个应用程序来使用 python 下载 YouTube 视频pytube3 但我无法检索视频的标题 这是我的代码 from pytube import YouTube yt YouTube link print yt titl
  • 无法在 osx-arm64 上安装 Python 3.7

    我正在尝试使用 Conda 创建一个带有 Python 3 7 的新环境 例如 conda create n qnn python 3 7 我收到以下错误 Collecting package metadata current repoda
  • 创建嵌套字典单行

    您好 我有三个列表 我想使用一行创建一个三级嵌套字典 i e l1 a b l2 1 2 3 l3 d e 我想创建以下嵌套字典 nd a 1 d 0 e 0 2 d 0 e 0 3 d 0 e 0 b a 1 d 0 e 0 2 d 0
  • 默认情况下,Keras 自定义层参数是不可训练的吗?

    我在 Keras 中构建了一个简单的自定义层 并惊讶地发现参数默认情况下未设置为可训练 我可以通过显式设置可训练属性来使其工作 我无法通过查看文档或代码来解释为什么会这样 这是应该的样子还是我做错了什么导致默认情况下参数不可训练 代码 im
  • 查询为空 Node Js Sequelize

    我正在尝试更新 Node js 应用程序中的数据 我和邮递员测试过 我的开发步骤是 从数据库 MySQL 获取ID为10的数据进行更新 gt gt 未处理的拒绝SequelizeDatabaseError 查询为空 我认识到 我使用了错误的
  • 使用 PHP 将 latin1_swedish_ci 转换为 utf8

    我有一个数据库 里面充满了类似的值 Dhaka 应该是 Dhaka 因为我在创建数据库时没有指定排序规则 现在我想修复它 我无法从最初获取数据的地方再次获取数据 所以我在想是否可以在 php 脚本中获取数据并将其转换为正确的字符 我已将数据

随机推荐

  • 计数器实现七分频

    七分频 即将输入信号的频率变为原来的七分之一 本文用计数器实现输入信号的七分频 一 画出七分频的时序逻辑 实现原理 图中用到了两个计数器 一个上升沿触发一个下降沿触发 且每当计数器从0计数到6时 复位 中间信号sig1 sig2分别在cnt
  • xhtml2pdf如何支持中文

    这段时间在做一个图片PDF的项目 需要把网页转换成PDF 找到了python的xhtml2pdf这个库 个方面都满意 只是对中文的支持不好 html上的中文转换成PDF后都成了乱码 貌似中文网站都没有找到合适的解决办法 只能求助于万能的go
  • 传统语音增强——基本的维纳滤波语音降噪算法

    一 维纳滤波的基本原理 基本维纳滤波就是用来解决从噪声中提取信号问题的一种过滤 或滤波 方法 它基于平稳随机过程模型 且假设退化模型为线性空间不变系统的 实际上这种线性滤波问题 可以看成是一种估计问题或一种线性估计问题 基本的维纳滤波是根据
  • error LNK2001: 无法解析的外部符号 “void __cdecl cv::cvtColor

    c 调用opencv时报错了 error LNK2001 无法解析的外部符号 void cdecl cv cvtColor 现在发现有两个可能的原因 原因1 没有添加lib库 需要添加lib库 VC 目录 包含目录 VC 目录 库目录 链接
  • 网络安全入门学习练手——CS伪装钓鱼网站

    文章目录 一 实验环境 二 使用工具和目标 三 开始复现 1 启动Cobalt Strike服务器端 打开Cobalt Strike客户端 2 设置监听器 3 网站克隆 4 在受害者端输入克隆网站对应的ip 5 测试 四 拓展 让钓鱼网址挂
  • 记录一次mac电脑安装git并在idea中使用的问题

    一 安装Git 下载地址 https sourceforge net projects git osx installer 点击下载最新版就可以了 下载速度很快的 下载完直接打开 默认安装即可 安装完成直接在命令行用root用户执行 git
  • L1-020 帅到没朋友(java)

    1 题目详情 当芸芸众生忙着在朋友圈中发照片的时候 总有一些人因为太帅而没有朋友 本题就要求你找出那些帅到没有朋友的人 输入格式 输入第一行给出一个正整数N 100 是已知朋友圈的个数 随后N行 每行首先给出一个正整数K 1000 为朋友圈
  • gcc make makefile 的基本介绍

    一 gcc 1 在window操作系统下 编译工具用集成开发环境 在Linux操作系统下没有很好的集成环境 用的编译器是gcc 2 程序的编译分为四个阶段 由 c到可执行程序 1 预编译 2 编译 3 汇编 4 链接 3 编译程序 1 一步
  • PTAMM阅读笔记之SLAM概述(五)

    1 同时定位与地图创建允许机器人在未知环境中 依靠自身所带的传感器递增式地创建环境地图 并同时给出机器人所在位置 2 移动机器人的定位有两种类型 全局定位 绝对定位 Global Absolute Localization 和位置跟踪 Po
  • Mybatis3快速上手(详细)

    因为编辑器不互通 所以可以直接打开有道云看 有道云链接 Mybatis的初入 创建Maven项目工程 因为Mybatis属于数据访问层的操作 我们需要引入相关依赖 mysql mysql connector java 8 0 29 org
  • HashMap实现原理及扩容机制详解

    文章目录 一 HashMap基础 二 红黑树基础 三 HashMap实现原理 1 Node和Node链 2 拉链法 3 关于Node数组 table 4 散列算法 5 HashMap和红黑树 6 关于TreeNode 转自 这篇更详细 ht
  • UNext:基于 MLP 的快速医学图像分割网络

    UNext 会议分析 摘要 贡献 方法 整体框架 1 Shifted MLP 2 Tokenized MLP Stage 实验 1 对比实验 2 消融实验 2 1 模块的消融实验 2 2 通道数的探索 可借鉴参考 会议分析 期刊 会议 名
  • 前端常见难点面试题

    1 跨域 同源策略 同源策略 同源策略是浏览器的一个安全功能 不同源的客户端脚本在没有明确授权的情况下 不能读写对方资源 同源 就是协议 域名和端口号相同 降域 document domain 同源策略认为域和子域属于不同的域 如 chil
  • 《代码走查》杂记

    代码走查 一 定义 1 代码走查 code walkthrough 是一个开发人员与架构师集中与讨论代码的过程 代码走查的目的交换有关代码是如何书写的思路 并建立一个对代码的标准集体阐述 在代码走查的过程中 开发人员都应该有机会向其他人来阐
  • OpenGL: 视图矩阵的推导

    OpenGL 视图矩阵的推导 2014年03月04日 11 08 45 阅读数 6525 把物体从世界坐标系转化到视点坐标系的矩阵称为视图矩阵 下面我们先看下opengl视图矩阵的推导过程 假设视点或camera的局部坐标系为UVN UVN
  • webpack中的代码分离

    Tip 本指南继续沿用 起步 中的示例代码 请确保你已熟悉这些指南中提供的示例以及输出管理章节 代码分离是 webpack 中最引人注目的特性之一 此特性能够把代码分离到不同的 bundle 中 然后可以按需加载或并行加载这些文件 代码分离
  • Python 九九乘法表的7种实现方式

    Python 九九乘法表的7种实现方式 九九乘法表是初学者学习编程的必要练手题目之一 因此各种语言都有对应的实现方式 而 Python 也不例外 在 Python 中 我们可以使用多种方式来生成一个简单的九九乘法表 实现方式一 双重循环 f
  • 远程debug java_远程Debug Java进程的方法

    远程debug的意思是启动一个Java进程 启动一个debugger进程 将两者连接起来 利用debugger来debug Java进程 事实上目前所有的IDE的debug功能都是通过远程debug方式来实现的 它们都利用了一个叫做JDPA
  • 【行人重识别】Unsupervised Salience Learning for Person Re-identification

    Abstract 人眼可以基于 一些较小的显着区域来识别人的身份 然而 当使用现有方法计算图像的相似度时 通常会隐藏这种有价值的显着信息 此外 许多现有的方法学习区别性特征并以监督的方式处理急剧的视点变化 并要求为不同的摄像机视图对标注新的
  • QSqlQueryModle使用过滤器来完成数据库数据筛选

    原型 void QSqlTableModel setFilter const QString filter 注意 如果模型已从数据库中填充数据 则模型将其与新滤波器重新选择 否则 将在调用下一次select 中应用过滤器 model的sel