`
皖雪欢飞
  • 浏览: 25705 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

Mysql中的group_concat和find_in_set函数的详解

 
阅读更多

一.Mysql中的group_concat函数:

1.解释:
    当SQL语句中使用到....group by....的时候, 该函数能够将相同的行组合起来,或者将满足条件的数据结合起来,返回由指定分隔符链接的字符号串数据.

 

2.用法:

group_concat( [DISTINCT]  要连接的字段   [Order BY 排序字段 ASC/DESC]   [Separator '分隔符'] )

默认按照“,”来连接。

 

3.举例说明:

(1)将满足条件的数据用“;”连接显示,去掉重复的数据倒序排列:

SELECT GROUP_CONCAT(distinct  keyword_id  order by keyword_id  desc  separator ';') keywordInfo  FROM wechat_keyword WHERE keyword_up_code = '-1'

(2)分组查询将相同的行组合起来:

select id,group_concat(distinct  price order by price desc) info  from goods group by id;

 

二.find_in_set函数:

 

1.解释:

返回所给值在给定字符号串中的位置或者信息。

 

2.用法:
FIND_IN_SET(str,strlis

 

3. 举例说明:

(1)假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。

如果str不在strlist 或strlist 为空字符串,则返回值为 0 。如任意一个参数为NULL,则返回值为 NULL。这个函数在第一个参数包含一个逗号(‘,’)时将无法正常运行。从1开始!

SELECT FIND_IN_SET('b','a,b,c,d');------返回2

 

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

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

 

 

 

 

 

 

分享到:
评论

相关推荐

    【GROUP_CONCAT】使用之MySQL官方文档翻译

    SET SESSION group_concat_max_len = val; -- 或者使用 GLOBAL 修改全局设置 ``` 其中 `val` 是一个新的长度值。需要注意的是,实际的长度还受到 `max_allowed_packet` 系统变量的限制。 2. **结果类型** ...

    MySQL中group_concat函数深入理解

    MySQL中的`GROUP_CONCAT`函数是一个非常实用的聚合函数,它允许你在分组查询中将一组行的某个列值合并成一个字符串,每个值之间由指定的分隔符隔开。这个函数对于数据汇总和报告生成特别有用,因为它可以把多行数据...

    如何修改Mysql中group_concat的长度限制

    在MySQL数据库中,`GROUP_CONCAT` 函数是一个非常实用的工具,它允许你在聚合查询中将多个行的某个列值合并成一个单一的字符串,每个值之间由默认的逗号分隔。然而,当你处理大量数据时,可能会遇到一个限制,即`...

    MySQL GROUP_CONCAT限制解决方案

    作用:  GROUP_CONCAT函数可以拼接某个字段值成字符串,默认的分隔符是 逗号,即...SHOW VARIABLES LIKE 'group_concat_max_len' 操作方法:(如图) 调整长度设置方法: (1)在MySQL配置文件中加入:  文件:my.ini

    MySQL统计函数GROUP_CONCAT使用陷阱分析

    MySQL中的GROUP_CONCAT函数是一个非常实用的统计函数,它允许我们合并特定列的值,并以指定的分隔符连接...在实际工作中,结合MySQL的其他统计函数和技巧,如SUM、COUNT、AVG等,可以更高效地完成数据处理和分析任务。

    mysql中GROUP_CONCAT的使用方法实例分析

    在MySQL中,`GROUP_CONCAT` 是一个非常实用的聚合函数,它允许你在分组查询时将同一组内的多个值合并成一个字符串。这个函数在处理列表或者集合数据时非常有用,尤其在需要将关联表中的多行数据整合成一行展示时。...

    oracle 创建wm_concat函数

    在Oracle 10G及更早版本中,并没有内置的`wm_concat`函数,该函数主要用于对一组字符串进行连接操作。为了在这些版本中实现类似的功能,需要自行创建一个用户定义的聚合函数。下面将详细介绍如何创建这样一个函数。 ...

    Mysql的GROUP_CONCAT()函数使用方法

    MySQL中的GROUP_CONCAT()函数是一个非常实用的聚合函数,它允许你在分组查询时将同一组内的多个值合并成一个字符串。此函数主要用于数据分析和报表生成,尤其在处理多对多关系的数据时,能简化数据处理流程。在本文...

    wm_concat函数所需资源包

    在Oracle数据库环境中,`WM_CONCAT`函数是一个非常实用的工具,用于将多个行的数据合并成单个字符串。然而,自Oracle 11g R2版本开始,这个函数被标记为弃用,导致许多用户在使用时遇到问题。标题中的"wm_concat函数...

    wm_concat函数DDL.zip

    MEMBER FUNCTION ODCIFINALFUNC(pself IN OUT WM_CONCAT_IMPL) RETURN VARCHAR2 ); / CREATE OR REPLACE TYPE BODY WM_CONCAT_IMPL IS STATIC FUNCTION ODCIAGGTRANS(p acum WM_CONCAT_IMPL, p_val VARCHAR2) ...

    wmsys_wm_concat函数结果拆解

    根据给定文件的信息,本文将深入探讨“wmsys_wm_concat函数结果拆解”的相关知识点,包括该函数的基本概念、应用场景以及SQL示例代码的详细解析。 ### wmsys_wm_concat函数简介 在Oracle数据库中,`wmsys.wm_...

    浅谈MySQL中group_concat()函数的排序方法

    SET group_concat_max_len = 1000000; -- 设置最大长度为100万字节 ``` 此外,`GROUP_CONCAT()` 也可以与 `DISTINCT` 关键字一起使用,去除相同值的重复,比如: ```sql SELECT username, GROUP_CONCAT(DISTINCT ...

    重建WMSYS用户的WMSYS.WM_CONCAT函数的3个文件

    在Oracle数据库环境中,WMSYS.WM_CONCAT函数是一个用于字符串连接的实用工具,尤其在处理多值列时非常有用。然而,有时由于各种原因,这个函数可能丢失或损坏,需要进行重建。以下是对重建WMSYS.WM_CONCAT函数涉及的...

    解决Oracle没有WM_CONCAT函数.zip

    在Oracle数据库中,WM_CONCAT是一个非常实用的聚合函数,用于将一组字符串连接成一个单一的字符串,类似于SQL Server中的STRING_AGG或MySQL中的GROUP_CONCAT。然而,Oracle官方并没有提供这个函数,它是一个第三方...

    ORA-00904: "WM_CONCAT": 标识符无效

    在升级到新的Oracle版本时,确保充分测试和理解新版本中函数和特性的变化是非常重要的。对于依赖过时函数的旧代码,需要进行适配以确保在新环境中正常运行。如果压缩包中的文件是自定义函数,那么在你的环境中部署这...

    类似于wmsys.wm_concat的自定义函数clob版

    在Oracle数据库中,`WMSYS.WM_CONCAT`函数是一个非常实用的工具,它用于将多行数据合并成一个单行字符串。然而,由于其内部处理机制,当需要合并的数据量过大时,可能会遇到“字符串缓冲区太小”的错误。这是因为`WM...

    mysql的group_concat函数使用示例

    MySQL中的`GROUP_CONCAT`函数是一个非常实用的聚合函数,用于在分组查询时将同一组内多个相同字段的值合并成一个字符串,各值之间用指定的分隔符隔开。这个函数对于数据报告、汇总和数据分析非常有用。下面我们将...

Global site tag (gtag.js) - Google Analytics