首页 > 其他分享 >行转列

行转列

时间:2023-03-13 18:32:02浏览次数:22  
标签:www idList seq 转列 rownum 连接 SELECT


SELECT * from (
SELECT id,seq ,SUBSTRING_INDEX(SUBSTRING_INDEX(idList, ';', seq),';' ,-1) idList
FROM (SELECT @rownum:=@rownum+1 AS seq FROM (SELECT @rownum:= 0) r, t_dome LIMIT 0,100) b
CROSS JOIN (
SELECT id,filmIdList idList FROM t_dome
) as similar WHERE seq BETWEEN 1 AND ( SELECT 1 + LENGTH(idList) - LENGTH(REPLACE(idList, ';', '')))
) x WHERE idList > 0


CROSS JOIN 是交叉连接 或者 笛卡尔连接:连接用于从两个或者多个连接表中返回记录集的笛卡尔积,即将左表的每一行与右表的每一行合并。

A和B的合成结果和方式,

A = {1,2}

B = {a,b}

(1,a)(1,b)(2,a)(2,b)


substring_index(字符串,分隔符,序号)

string:用于截取目标字符串的字符串。可为字段,表达式等。

sep:分隔符,string存在且用于分割的字符,比如(,;、.)等。

num:序号,为非0整数。若为整数则表示从左到右数,若为负数则从右到左数。比如www.xxx.com,要获取www字符就即substring_index("www.xxx.com",'.',1)

标签:www,idList,seq,转列,rownum,连接,SELECT
From: https://blog.51cto.com/u_15261296/6118374

相关文章

  • SQL行转列、列转行(SQL Server版)
    在SQLServer中使用SQL实现行转列、列转行,可以使用多种方法,在SQL2005以前可以使用casewhenthen...语句,但这种方法的问题在于列举的列名要写死,如果列名很多,casewhen语......
  • sqlserver 行转列 列转行
    行列互转,是一个经常遇到的需求。实现的方法,有casewhen方式和2005之后的内置pivot和unpivot方法来实现。在读了技术内幕那一节后,虽说这些解决方案早就用过了,却没有系统性......
  • oracle的 listagg() WITHIN GROUP () 行转列函数的使用
    oracle的listagg()WITHINGROUP()行转列函数的使用https://blog.csdn.net/sinat_36257389/article/details/81004843如需转载请标明出处1.使用条件查询查询部门为......
  • SQL Server JSON 转行 后转列
    1.使用ParseJsonFuncJSON转行USE[DataIntegration]GOCREATEFUNCTION[dbo].[ParseJsonFunc](@jsonnvarchar(max))RETURNS@hierarchytable(object_idintNOT......
  • Mysql:mysql行转列(数值行和字符行)
    数值行转列建表DROPTABLEIFEXISTStb_score;CREATETABLEtb_score(idINT(11)NOTNULLauto_increment,useridVARCHAR(20)NOTNULLCOMMENT'用户id'......
  • SqlServer行转列,列转行
    文章来源:https://leetcode.cn/problems/rearrange-products-table/solution/by-esqiimulme-pjiy/列转行用union或unionall将多列的字段整合到一行。(当使用union时,mysql......
  • Oracle 行转列的坑
    在使用Oracle的时候,有个需求需要将统计的数量关联别的表格联查出来,就想到了用行转列,搜了很多种方法,这里记录一下自己遇到的坑。首先要确定一下自己使用的Oracle的版本:因为:......
  • layui行转列的偷懒写法
     vartempCols=[];//转换后的列头vartempData=[]; varentcount={};//转换后的第一行,也就是原来的第一列......
  • 【MySQL】mysql | 数据处理 | 行转列 | 一种行转列的处理思路
    一、说明        1、mysql数据库        2、行转列场景,对于不同行业来说,使用频率不一样        3、本文档仅提供一种行转列的思路,仅做参考二、开始......
  • SQLSERVER 使用PIVOT、UNPIVOT实现行转列与列转行!!!
    原文链接:https://www.cnblogs.com/wypd/archive/2022/05/07/16242851.html一、使用PIVOT实现行转列1、首先创建一个学生表CREATETABLE[dbo].[Students](   ......