举例: id value 1 1,2,3,4 2 2,3,4,5,6 拆分成: id value 1 1 2 2 3 3 4 4 5 5 6 6 ),) ) distinct:去重复操作 a.value:表别名.需要拆分的字段名 table a:表名 别名 help_topic:自增长表…
--创建测试表 )) insert into #temp(names) values('张三,李四'), ('中国,美国,巴西'), ('深圳,上海,北京,广州,哈尔滨'), ('足球,篮球,乒乓球,台球') 目的是要将用逗号分隔的names列拆分为多行,最终要产生的结果为: 1 张三 1 李四2 中国2 美国2 巴西3 深圳3 上海3 北京3 广州3 哈尔滨4 足球4 篮球4 乒乓球4 台球 ;with cte as( as n union all ) ,idx as ( select a.s…
select*from (select*from test1 union all select*from test2 ) //两个查询的数据行数需要对应一致,且名字as 一致. 1.如果直接用如下sql语句是会报错:Incorrect usage of UNION and ORDER BY. SELECT * FROM t1 WHERE username LIKE 'l%' ORDER BY score ASCUNIONSELECT * FROM t1 WHERE username LIKE '…
在做系统开发的时候,有可能是由于之前的遗留问题,导致在数据入库的时候,将多个数据以逗号分隔的实行,存储在一条数据中,例如: ID VALUE 1 yang,zheng,song 2 zhao,qian,sun 3 jiang 现在因为新的需求,需要将这些数据以下边的方式存储在数据库中,方便查询和处理: ID VALUE 1 yang 1 zheng 1 song 2 zhao 2 qian 2 sun 3 jiang 所以需要将原有的数据查询出来,然后进行逗号分隔为多行,并插入到新的表中. 假设…
注:先学习sql server里的递归CTE. 假设有兴趣表Hobbys Name Hobby 小张 篮球,足球,羽毛球 Name Hobby 小张 篮球 小张 足球 小张 羽毛球 采用[递归cte] startindex from Hobbys union all ) startindex ), then len(Hobby) else Hobby end) endindex,startindex from tempHobbys) ) Hobby from tempHobbys2…
=========================== The table is as follows: Name | Project | Error 108 test Err1, Err2, Err3 109 test2 Err1 I want to create the following: Name | Project | Error 108 Test Err1 108 Test Err2 108 Test Err3 109 Test2 Err1 =====================…
今天在用Hibernate通过原生SQL和ResultTransformer映射时,出现数据类型不匹配的错误.但是通过Entity映射,没有问题.在网上找了好多答案,终于解决了. 核心代码: String sql = "select currencies.code, attr1, attrN from currencies, table1,tableN"; SQLQuery sqlQuery = session.createSQLQuery(sql); sqlQuery.setResu…
Django自身默认使用sqlite3这个轻量级的数据库,但是当我们开发网站时,sqlite3就没有mysql好,sqlite3适合一些手机上开发使用的数据库. 准备的软件mysql数据库,版本5.7及以上.navicat,(可选的).使用navicat主要是简化我们对数据库的操作.没有也一样.安装mysql驱动程序.常见的驱动程序:a. MySQL-python:也就是MySQLdb,是对c语言操作数据库的一个简单封装.遵循了Python DB API v2,但是只支持python2,目前还不…
mysql根据逗号将一行数据拆分成多行数据 原始数据 处理结果展示 DDL CREATE TABLE `company` ( `id` ) DEFAULT NULL, `name` ) DEFAULT NULL, `shareholder` ) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; DML ', '阿里巴巴', '马云'); ', '淘宝', '马云,孙正义'); 三种方式,相同的原理 使用MySQL库中的自增序列表 SELECT…
本案例通过MySql.Data和Dapper包执行原生sql,实现对数据库的操作. 操作步骤: 第1步:在MySql数据库中新建表User(使用Navicat For MySql工具) 建表语句: create table User(Id int ,Name varchar(20),Birth TIMESTAMP); 查询语句: Select * from User; 表建立后立即查询一下,可以看到现在还没有任何数据 如下图所示: 第2步:安装引用包 (1) 打开程序包管理器控制台 工具---N…