`

(收藏)mysql中的字符串函数

 
阅读更多
经常要遇到mysql字符串中,要在一些逗号分割的字符中进行寻找是否有这个字符

举个例子来说:
有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11,12,13等等

现在有篇文章他既是 头条,又是热点,还是图文,

type中以 1,3,4的格式存储.

们我们如何用sql查找所有type中有4图文标准的文章呢??


这就要我们的find_in_set出马的时候到了.

以下为引用的内容:

select * from article where FIND_IN_SET('4',type)

----------------------------------------------------------
mysql手册中find_in_set函数的语法:

FIND_IN_SET(str,strlist)

假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。
一个字符串列表就是一个由一些被‘,’符号分开的子链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type SET列,则   FIND_IN_SET() 函数被优化,使用比特计算。
如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。

mysql> SELECT FIND_IN_SET('b','a,b,c,d');

-> 2 因为b 在strlist集合中放在2的位置 从1开始
--------------------------------------------------------
select FIND_IN_SET('1','1'); 返回 就是1 这时候的strlist集合有点特殊 只有一个字符串 其实就是要求前一个字符串 一定要在后一个字符串集合中 才返回 大于0的数

select FIND_IN_SET('2','1,2');返回2
select FIND_IN_SET('6','1'); 返回0
----------------------------------------------------------

注意:
select * from treenodes where FIND_IN_SET(id,'1,2,3,4,5');
使用find_in_set函数一次返回多条记录

id 是一个表的字段 然后每条记录分别是id等于1,2,3,4,5的时候
有点类似in (集合)
select * from treenodes where id in (1,2,3,4,5);
分享到:
评论

相关推荐

    MySql的收藏学习专用。。。

    3. **数据类型**: MySQL支持多种数据类型,如整数类型(TINYINT、SMALLINT、INT、BIGINT)、浮点和双精度类型(FLOAT、DOUBLE)、字符串类型(CHAR、VARCHAR、TEXT)、日期和时间类型(DATE、TIME、DATETIME、...

    收藏PHP常用函数 大部分收藏在内

    收藏PHP常用函数 大部分收藏在内,产生随机字符串函数 截取一定长度的字符串(该函数对GB2312使用有效) 取得客户端IP地址 判断邮箱地址 分页(两个函数配合使用) 获取新插入数据的ID //获得当前的脚本网址 //把...

    Mysql面试题详解MySQL常见面试题汇总(建议收藏!!!)

    1. MySQL 中的 varchar 和 char 的区别:varchar 和 char 都是字符串类型,但 varchar 可以存储变长字符串,而 char 只能存储固定长度的字符串。 2. varchar(10) 和 int(10) 代表什么含义?:varchar(10) 代表字符串...

    MySQL面试经典100题(收藏版,附答案).doc

    - 字符串类型的字段在`WHERE`子句中需用引号括起,否则索引无效。 - `LIKE`通配符可能导致索引失效,尤其是以通配符开头的模式匹配。 - 联合索引中,如果查询条件不是索引的第一列,索引可能不会被使用。 - 使用...

    MySQL常见面试题汇总(建议收藏!!!).pdf

    1. **varchar与char**:varchar节省空间,适用于可变长度的字符串;char固定长度,浪费空间但存储效率高。 2. **binlog格式**:MySQL的binlog有ROW、STATEMENT和MIXED三种格式,分别适用于不同场景。 3. **超大...

    对MySql经常使用语句的全面总结(必看篇)

    - 字段定义示例:`字段名 数据类型 [NOT NULL | NULL] [DEFAULT 默认值] [AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY] [COMMENT '字符串']` - **表选项**: - 字符集:`CHARSET = charset_name` - 存储引擎...

    2021-2022计算机二级等级考试试题及答案No.17790.docx

    字符串函数应用 - **知识点**: 函数 `SUBSTR("VisualFoxPro5.0",7,6)` 返回的结果是 `FoxPro`。 - **解释**: `SUBSTR` 函数用于从字符串中提取子串,第一个参数是原始字符串,第二个参数是从第几个字符开始提取,...

    个人收藏c#经典项目代码

    C#提供ADO.NET库进行数据库访问,通过连接字符串、SQL查询和数据适配器来读写数据。学习如何在项目中实现数据库操作,有助于理解数据持久化的概念。 6. **网络编程** C#支持TCP/IP、HTTP和其他网络协议,可以用于...

    韩顺平php入门到精通笔记

    2. PHP字符串与数组:字符串处理在PHP中至关重要,笔记会讲解如何创建、操作和查找字符串,以及字符串函数的应用。数组则用于存储多个值,笔记将涵盖索引数组、关联数组以及多维数组的使用方法。 3. 文件与目录操作...

    分享自己收藏的PHP学习资料

    1. **基础教程**:这部分通常涵盖PHP的基本语法,如变量、数据类型、控制结构(如if-else,for,while循环)、函数、数组、字符串操作等。理解这些基础知识是进一步深入学习的前提。 2. **面向对象编程**:随着PHP...

    PHP实例开发源码-I6吧 php 网址收藏.zip

    PHP语法简洁明了,支持多种数据类型,包括整型、浮点型、字符串、数组、对象等。通过`<?php ... ?>`标记,可以在HTML文档中嵌入PHP代码。PHP的主要功能包括处理服务器端的数据,生成动态网页,以及与数据库进行交互...

    Android收藏的工具类

    在Android中,MD5工具类可以帮助我们快速计算字符串或文件的MD5值,确保数据的一致性或安全。 6. **SDCard操作工具类**: SDCard工具类用于在外部存储空间进行文件操作,如读写文件、检查SD卡是否存在、获取SD卡...

    PHP网络编程从入门到精通源码

    2. **字符串和数组操作**:学习如何处理字符串和数组,包括字符串函数(如strlen、substr、str_replace等)和数组函数(如array_push、array_pop、array_merge等),以及数组遍历和操作方法。 3. **文件和目录操作*...

    2021-2022计算机二级等级考试试题及答案No.2032.docx

    5. `strlen()` 是C/C++中的一个函数,用于计算字符串的长度,不包括结束符'\0',所以包含6个字符的字符串"China"的长度是6。 6. 提供的Python代码是一个简单的通讯录管理系统,使用字典存储联系人信息,支持增加、...

    2021-2022计算机二级等级考试试题及答案No.11206.docx

    - **详细解释**:在Pascal或Delphi中,`at()`函数用于返回子字符串首次出现在字符串中的位置。`at("net", "Internet")`的结果为`6`,表示子字符串"net"在字符串"Internet"中首次出现的位置为第6个字符处。 #### 20....

    2021-2022计算机二级等级考试试题及答案No.10935.docx

    这是因为eval()函数会先计算字符串内的表达式再输出结果。 19. **Internet的概念** Internet是一个全球性的计算机网络系统,具备网络资源共享的特点。它并不是局域网的一种,而是由众多网络相互连接而成的一个...

    2021-2022计算机二级等级考试试题及答案No.10089.docx

    - 如果在公有派生类的成员函数中无法直接访问基类中继承来的某个成员,那么该成员最可能是基类中的**私有成员**。因为私有成员即使被继承也无法直接访问。 ### 18. 数据库连接 - `mysql_connect()`建立的是非持久...

    2021-2022计算机二级等级考试试题及答案No.11174.docx

    3. 字符串比较:在JavaScript中,使用"=="比较字符串时,不仅比较值,还比较类型,因此两个值相同但类型不同的字符串会返回false。 4. IE浏览器功能:"历史"按钮用于查看之前访问过的站点,"收藏夹"用于管理经常...

    2021-2022计算机二级等级考试试题及答案No.16001.docx

    5. 字符串操作:在某些编程语言中(如VBA或VBScript),可以用Mid、Left、Right等函数来截取字符串。题目中给出的选项D表示这三种方式都可以实现获取"cd"。 6. 构造函数与析构函数:在面向对象编程中,构造函数用于...

    PHP网络编程技术与实践 源码

    2.3.1 字符串的分割与截取 2.3.2 字符串的加密 2.3.3 字符串比较 2.3.4 字符串的转义 2.3.5 字符串的格式化 2.4 PHP的日期时间处理 2.4.1 时间与日期的显示操作 2.4.2 时间与日期的格式化输出 2.5 PHP的URL处理 ...

Global site tag (gtag.js) - Google Analytics