当前位置: 首页 > news >正文

node.js 封装分页查询

node.js封装sql分页查询

方法:

/*** 生成分页查询sql* @param {string} table 表名* @param {number} pageNum 分页页数 * @param {number} pageSize 分页条数 * @param {object} query 查询对象 例:{id:1,name:'小明'}* @returns sql语句*/
const limit = (table, pageNum, pageSize, query) => {let sql = `WHERE `let keyList = Object.keys(query) // 提取查询对象中的key为数组//查询对象全为空则结束函数if (!keyList.some(e => query[e])) { //如果查询对象中得value都为空的话查询条件为空sql = ''} else {//生成SQL语句keyList.forEach((e, index) => {//判断下一个分页条件是否为空,如果不为空则拼接ANDlet context = query[keyList[index + 1]] ? ' AND ' : '' //value不为空时,拼接筛选条件if (query[e]) {sql += `${e} like '%${query[e]}%'${context} ` //拼接sql}})}return `SELECT * FROM ${table} ${sql}LIMIT ${(pageNum - 1) * 10},${pageSize}`
}
module.exports = limit

使用:

  let {pageSize, // 条数pageNum,  // 页数sb_Name   // 穿过来的对象} = req.query //req:请求对象 query:get请求携带对象const selectData = {sb_Name   // 需要筛选的对象}let sqlString = limit('tableName', pageNum, pageSize, selectData)// sqlString =  SELECT * FROM u8_table  LIMIT 0,10 sqlString

相关文章:

node.js 封装分页查询

node.js封装sql分页查询 方法: /*** 生成分页查询sql* param {string} table 表名* param {number} pageNum 分页页数 * param {number} pageSize 分页条数 * param {object} query 查询对象 例:{id:1,name:小明}* returns sql语句*/ const limit (ta…...

iptables 基本使用

iptables 主要用到两个表:filter 和 nat,其中 filter 表可以用来过滤数据包;nat 可以用来修改数据包的源地址和目的地址。 chain chain 是 table 中对数据包进行匹配的规则,对于 filter 来说 chain 有 INPUT & OUTPUT & …...

食品笔记()

吃东西有时不注意,就容易不舒服,记录下。 辣椒 辣椒真是个让人又爱又恨的东西。 看着想吃,吃着过瘾,吃完容易肚子疼。 主要是这东西本身就会刺激身体,即使是能吃辣的人,也容易造成肠胃发炎。 适量吃些即…...

C++入门和基础

目录 文章目录 前言 一、C关键字 二、命名空间 2.1 命名空间的定义 2.2 命名空间的使用 2.3 标准命名空间 三、C输入&输出 四、缺省参数 4.1 缺省参数的概念 4.2 缺省参数的分类 五、函数重载 5.1 函数重载的简介 5.2 函数重载的分类 六、引用 6.1 引用的…...

一些C语言知识

C语言的内置类型&#xff1a; char short int long float double C99中引入了bool类型&#xff0c;用来表示真假的变量类型&#xff0c;包含true&#xff0c;false。 这个代码的执行结果是什么&#xff1f;好好想想哦&#xff0c;坑挺多的。 #include <stdio.h>int mai…...

代码工具APEX的入门使用(未包含安装)

第一次使用APEX是2019年&#xff0c;这个技术成名已久只是我了解的比较晚。请看Oracle ACE的网站&#xff0c;这就是用APEX做的。实际上有一次我看O记的人操作他们的办公流程&#xff0c;都是用APEX做的。 那一年&#xff0c;我用APEX做了一个CMDB的管理系统。那时候还没有流行…...

负载均衡.

简介: 将请求/数据【均匀】分摊到多个操作单元上执行&#xff0c;负载均衡的关键在于【均匀】。 负载均衡的分类: 网络通信分类 四层负载均衡:基于 IP 地址和端口进行请求的转发。七层负载均衡:根据访问用户的 HTTP 请求头、URL 信息将请求转发到特定的主机。 载体维度分类 硬…...

Git 指令深入浅出【2】—— 分支管理

Git 指令深入浅出【2】—— 分支管理 分支管理1. 常用分支管理指令2. 合并分支合并冲突合并模式 3. 实战演习 分支管理 1. 常用分支管理指令 # 查看本地分支 git branch# 查看远程分支 git branch -r# 查看全部分支 git branch -aHEAD 指向的才是当前的工作分支 # 查看当前分…...

工作流/任务卸载相关开源论文分享

decima-sim 概述&#xff1a; 图神经网络强化学习处理多工作流 用的spark的仿真环境&#xff0c;mit的论文&#xff0c;价值很高&#xff0c;高被引&#xff1a;663仓库地址&#xff1a;https://github.com/hongzimao/decima-sim论文&#xff1a;https://web.mit.edu/decima/co…...

为什么要用Python?

为什么要用Python&#xff1f; Python简单易用&#xff1a;提供大量的简单易用数据结构和内置库&#xff0c;语法结构也很简单易读&#xff0c;不需要使用括号来进行代码块分组&#xff0c;也不需要预声明变量或参数。Python开发效率高&#xff1a;简单易用的前提下&#xff0…...

北京大学发布,将试错引入大模型代理学习!

引言&#xff1a;探索语言智能的新边界 在人工智能的发展历程中&#xff0c;语言智能始终是一个核心的研究领域。随着大语言模型&#xff08;LLM&#xff09;的兴起&#xff0c;我们对语言智能的理解和应用已经迈入了一个新的阶段。这些模型不仅能够理解和生成自然语言&#x…...

Java 设计模式

编程设计模式六大原则 开闭原则&#xff08;Open Close Principle&#xff09;&#xff1a;对扩展开放&#xff0c;对修改关闭。在程序需要进行拓展的时候&#xff0c;不能去修改原有的代码&#xff0c;实现一个热插拔的效果。简言之&#xff0c;是为了使程序的扩展性好&#…...

Kivy和BeeWare 开发APP的优缺点,及其发展历史

Kivy和BeeWare都是流行的Python框架&#xff0c;用于开发移动应用。它们各自有独特的特点和优势&#xff0c;同时也面临一些挑战和限制。下面是对这两个框架的开发优缺点及其发展历史的总结。 Kivy 发展历史 起源&#xff1a;Kivy诞生于2010年&#xff0c;旨在提供一个用于P…...

C++递推

统计每个月兔子的总数 #include<bits/stdc.h> using namespace std; int n,sum0; void f(int); int main() {int a[1000];cin>>n;a[1]1;a[2]2;for(int i3;i<1000;i){a[i]a[i-1]a[i-2];}cout<<a[n];return 0; } void f(int n){}猴子吃桃子 #include<b…...

C++ 面试题

一、基础语法 1. C 和 C的区别 i. C是面向对象的的编程语言&#xff0c;C是面向过程的编程语言 ii. C中的内存分配运算符是new/delete而C 中是malloc和free iii. C中有函数重载而C 中没有 iv. C中新增了引用的概念而C 中只有值和指针 2. struct 和 class的区别 i. struc…...

MySQL之索引详解

华子目录 索引概述优缺点 索引的原理索引的设计原则索引结构B-tree&#xff08;多路平衡查找树&#xff09;BtreeHash 为什么InnoDB存储引擎选择Btree&#xff1f;索引分类聚集索引选取规则 单列索引和多列索引前缀索引创建索引1.创建表时创建索引2.在已经存在的表上创建索引3.…...

Java面试题总结8:springboot

Spring Boot自动配置原理 importConfigurationSpring spi 自动配置类由各个starter提供&#xff0c;使用ConfigurationBean定义配置类&#xff0c;放到META-INF/spring.factories下 使用Spring spi扫描META-INF/Spring.factories下的配置类 如何理解Spring Boot中Starter …...

Android 4.4 以下,OkHttp访问Https报错,设置了sslSocketFactory仍无效的解决方法

背景 Android 4.4 及以下&#xff0c;使用 OkHttp 发送 Https 请求&#xff0c;报以下错误&#xff1a; javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl0x6b712c90: Failure in SSL library, usually a protocol erro…...

如何扫码查看企业介绍及填写招聘表?招聘二维码在线生成的方法

现在很多企业会通过生成二维码的方式来做企业介绍以及企业招聘&#xff0c;企业信息通过图片、文字、视频及其他内容展示&#xff0c;再创建合适的表单让扫码者按照制定的内容来填写对应的信息&#xff0c;从而完成扫码招聘的目的。 对于也想采用这种方式的小伙伴&#xff0c;…...

如何限制一个账号只在一处登陆

大家好&#xff0c;我是广漂程序员DevinRock&#xff01; 1. 需求分析 前阵子&#xff0c;和问答群里一个前端朋友&#xff0c;随便唠了唠。期间他问了我一个问题&#xff0c;让我印象深刻。 他问的是&#xff0c;限制同一账号只能在一处设备上登录&#xff0c;是如何实现的…...

HY-MT1.5-1.8B翻译模型应用场景:跨境电商、多语言客服、文档翻译

HY-MT1.5-1.8B翻译模型应用场景&#xff1a;跨境电商、多语言客服、文档翻译 1. 轻量级翻译模型的核心价值 在全球化商业环境中&#xff0c;语言障碍仍然是企业拓展国际市场的主要挑战之一。HY-MT1.5-1.8B作为一款专为实际业务场景优化的轻量级翻译模型&#xff0c;其"小…...

Smart AM60 Armbian适配:从电视盒子到高性能服务器的蜕变之路

Smart AM60 Armbian适配&#xff1a;从电视盒子到高性能服务器的蜕变之路 【免费下载链接】amlogic-s9xxx-armbian Supports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l, r…...

Smithbox终极指南:零基础打造你的专属魂系列游戏世界

Smithbox终极指南&#xff1a;零基础打造你的专属魂系列游戏世界 【免费下载链接】Smithbox Smithbox is a modding tool for Elden Ring, Armored Core VI, Sekiro, Dark Souls 3, Dark Souls 2, Dark Souls, Bloodborne and Demons Souls. 项目地址: https://gitcode.com/g…...

VAD-LLaMA:融合长短期上下文与指令微调的视频异常检测与描述生成

1. 视频异常检测的痛点与VAD-LLaMA的突破 想象一下你是一个商场保安&#xff0c;每天盯着几十块监控屏幕。突然有个画面闪过一个人鬼鬼祟祟地撬收银台&#xff0c;但等你反应过来回放时&#xff0c;已经错过了关键几秒——这就是传统视频异常检测的典型困境&#xff1a;既难实时…...

别再死磕手册了!手把手教你用TwinCAT 3搞定EtherCAT CIA402从站配置(附状态机避坑点)

TwinCAT 3实战&#xff1a;EtherCAT CIA402从站配置全流程解析与状态机避坑指南 第一次接触EtherCAT CIA402协议栈时&#xff0c;面对ETG6010手册里密密麻麻的对象字典和状态机转换规则&#xff0c;相信不少工程师都有过这样的困惑&#xff1a;为什么我的驱动器始终无法进入Ope…...

告别第三方软件!用Win10远程桌面高效管理家里和公司的电脑,完整设置流程分享

高效混合办公指南&#xff1a;用Win10远程桌面无缝连接家庭与工作电脑 混合办公模式已成为现代职场的新常态&#xff0c;无论是居家办公时访问公司电脑处理紧急文件&#xff0c;还是出差途中远程连接家中设备获取资料&#xff0c;Win10内置的远程桌面功能都能提供稳定高效的解决…...

利用快马ai快速构建can协议数据监控工具原型

利用快马AI快速构建CAN协议数据监控工具原型 最近在做一个汽车电子相关的项目&#xff0c;需要监控CAN总线上的数据。作为初学者&#xff0c;我对CAN协议的理解还停留在理论层面&#xff0c;实际开发时发现从零搭建解析工具非常耗时。好在发现了InsCode(快马)平台&#xff0c;…...

node2vec在Spark上的分布式实现:处理大规模图的终极解决方案

node2vec在Spark上的分布式实现&#xff1a;处理大规模图的终极解决方案 【免费下载链接】node2vec 项目地址: https://gitcode.com/gh_mirrors/no/node2vec 想要处理包含数千万甚至上亿节点的大规模图网络数据吗&#xff1f;node2vec在Spark上的分布式实现为你提供了处…...

伊朗媒体:美军试图炸死在伊朗失联飞行员

新华社德黑兰4月5日电 伊朗塔斯尼姆通讯社5日凌晨报道称&#xff0c;美军搜救被击落战机的一名飞行员无果&#xff0c;试图通过空袭其在伊朗的可能藏身之处将其炸死。报道援引一名伊朗军方消息人士的话说&#xff0c;4日夜间至5日凌晨&#xff0c;美军出动战机&#xff0c;轰炸…...

别再死记硬背了!用Codesys可视化玩转按钮和指示灯:5个工业场景实战案例拆解(含配方管理思路)

Codesys可视化实战&#xff1a;5个工业场景下的按钮与指示灯高阶应用 在工业自动化领域&#xff0c;人机界面(HMI)的设计直接影响操作效率和系统可靠性。传统PLC编程往往过于关注功能实现而忽视交互体验&#xff0c;导致许多工业现场的操作面板充斥着杂乱无章的按钮和难以理解的…...