`

mysql存储过程中模糊查询语句拼接问题

阅读更多
set @stmt=concat('select * from jargon where name like \'%',ucase(t),'%\' or memo like \'%',ucase(t),'%\' order by id desc limit ',snum,',',size);
  prepare stmt from @stmt;
  execute stmt;
  DEALLOCATE PREPARE stmt;

  select count(*) from jargon where name like CONCAT('%',ucase(t),'%') or memo like CONCAT('%',ucase(t),'%');

对比前后两句like后拼接的差异,前一句需要为模糊匹配的对象加单引号;后一句则不需要,但是与limit语句拼接时,若limit相关的两个参数为变量,则不可以直接拼接。(具体原因不明)
分享到:
评论

相关推荐

    C#模糊查询之Sql语句

    在C#编程中,进行模糊查询通常涉及到与数据库交互,其中SQL语句是核心部分。模糊查询允许我们使用通配符来查找不完全匹配的字符串,这对于用户输入搜索关键词时非常有用。以下将详细讲解如何在C#中利用SQL进行模糊...

    mysql 全文模糊查找 便捷解决方案

    在IT行业中,数据库查询是日常开发中的重要环节,特别是对于大量数据的检索,全文模糊查找显得尤为重要。MySQL作为广泛使用的开源关系型数据库,提供了多种方式进行全文搜索和模糊匹配。本篇将聚焦于MySQL的全文模糊...

    MyBatis模糊查询

    通常,模糊查询使用SQL语句中的`LIKE`关键字来实现。模糊查询特别适用于文本数据的搜索,比如在姓名、地址或描述等字段中查找包含特定字符串的数据。 #### 三、MyBatis中实现模糊查询的方法 在MyBatis中实现模糊...

    mysql基本概念常见dos指令及常见SQL语句.pdf

    在SQL语句中,"select"语句是基础查询语法,用于从表中选择数据。"like"关键字用于实现模糊查询,其中"_"代表任意一个字符,而"%"代表任意数量(包括零个)字符。当需要对查询结果进行分组时,可以使用"group by...

    MYsql 数据库0基础SQL语句实战精讲.docx

    - **拼接符**:在MySQL中,使用CONCAT()函数将两个或多个字符串连接起来,如`SELECT CONCAT(column1, ' ', column2) FROM table;` 3. **排序查询** - 使用`ORDER BY`子句对查询结果进行升序(ASC)或降序(DESC)...

    mysql5.6及以下版本如何查询数据库里的json

    接下来,我们讨论如何在MySQL 5.6及以下版本中查询JSON字段: 在MySQL 5.7及以上版本中,我们可以使用JSON路径表达式(如`content->'$.actid'`)来直接查询JSON字段中的特定键值。但在5.6版本中,我们需要依赖`LIKE...

    mysql笔记.pdf

    通过`LIKE`关键字配合通配符`%`和`_`可以进行模糊查询。 - 正则表达式:使用`REGEXP`操作符来匹配符合正则表达式的记录。 - 字段处理:使用`Concat()`函数拼接多个字段;使用`AS`关键字为列赋予别名;使用文本处理...

    MySQL笔记1

    MySQL笔记1主要涵盖了数据库基础、MySQL简介、使用MySQL连接、数据检索、排序、过滤、通配符与正则表达式、计算字段、函数、汇总数据、分组、子查询、联结、全文本搜索、数据插入、更新与删除、创建和操纵表、视图、...

    mysql详细学习笔记

    在字符串拼接中,推荐使用 `CONCAT()` 函数,例如 `CONCAT(column1, ' ', column2)`。 **排序查询** - **ORDER BY**:对结果集进行排序,例如 `SELECT column_name FROM table_name ORDER BY column_name ASC|DESC...

    PHP实现多关键词查询

    然而,直接在SQL语句中拼接关键词可能存在SQL注入风险,因此,应该使用参数化查询或预处理语句来防止这种情况。在PHP中,可以使用PDO或mysqli扩展来实现这一目标。例如,使用PDO的预处理语句可能如下: ```php $...

    本人提供SQL语句大全(转载) 12009年04月28日 星期二 19:35SQL语句大全(转载)

    从给定的文件信息中,我们可以提炼出一系列与SQL语句相关的知识点,这些知识点涵盖了SQL的基本操作、查询优化以及在不同数据库系统中的表现差异。以下是对这些知识点的详细阐述: ### 1. SQL语句大全 文件标题和...

    PHP面试题集锦(包含mysql相关)

    - 减少模糊查询的使用。 **2. 创建索引** 合理地在数据表中创建索引可以显著提高查询速度。 **3. 使用缓存** - 对于频繁访问的数据,可以使用Redis等缓存技术来存储。 - 使用Output Buffering (OB)等技术实现动态...

    Java面试问题总结

    例如,在MySQL中,表级锁、行级锁和页级锁各有优劣,其中MyISAM在执行查询和更新时会自动加锁,而InnoDB支持行级锁,可以通过`SELECT ... LOCK IN SHARE MODE`和`SELECT ... FOR UPDATE`来添加共享锁和排他锁。 ...

    springboot+mybatis+limit代码实现分页、web前端到后台、crud、搜索关键字、完整实例项目

    MyBatis允许我们在Mapper接口的方法参数中传递这些条件,然后在SQL语句中动态拼接。前端可能通过表单提交搜索关键词,后端接收到请求后,解析参数并构造相应的查询条件。 6. **前端到后端通信**: 在Web应用中,...

    SQL入门常见问题总结与实用技巧介绍.docx

    这些技术允许在一个数据库管理系统中查询另一个数据库中的数据。 - ETL处理:使用工具或脚本来实现跨数据库的数据导入导出。ETL(Extract, Transform, Load)工具可以帮助整理和转换数据,以便在不同的数据库之间...

    获得汉字字符串的首字母

    4. **模糊查询**:在实现输入首字完成模糊查询功能时,可以将用户输入的首字母与存储的首字母串进行匹配,找出所有首字母匹配的记录。 在提供的文件列表中,`fGetPY.sql`可能是包含创建拼音查找表和实现此功能的SQL...

    SQL BASIC(SQL学习的笔记)

    基本的查询语句是`SELECT`,它允许我们从表中选取数据。例如,`SELECT column1, column2 FROM table_name;`会选取表中的`column1`和`column2`字段。`SELECT * FROM table_name;`则会选取所有字段。在查询中,我们...

    MySql复习–(1)基础SQL语法

    在SQL查询语句中,`SELECT`用于查询数据,例如`SELECT 查询列表 FROM 表名`,查询列表可以是字段、常量、表达式或函数。 在数据类型方面,字符型和日期型的值通常用单引号包围。在表达式中,`+`可以用于做加法运算...

    php mysql like 实现多关键词搜索的方法

    为了处理这种情况,你可以将这些关键词动态地拼接到SQL查询中。下面是一个简单的示例: ```php $keywords = array('中草药', '6'); $query = "SELECT * FROM table_name WHERE column_name LIKE '%"; foreach ($...

    程序员面试秘籍.docx

    比如,模糊查询like语句的写法,以及分页查询的实现,MyBatis的分页插件原理等。 4. **ORM框架**:MyBatis的映射方式包括Map映射、注解映射和XML映射,面试中可能会要求解释它们是如何将SQL结果封装为目标对象并...

Global site tag (gtag.js) - Google Analytics