SQL SERVER 字符拆分列为多行】的更多相关文章

注:先学习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…
Insus.NET以前有用XQuery的nodes()方法写过一个函数,是MS SQL字符拆分的函数,http://www.cnblogs.com/insus/archive/2012/02/26/2368283.html 今天学习SQL,再尝试另写一个: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: Insus.NET --…
查询sql server 2008所有表和行数 SELECT a.name, b.rows FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id , )) ORDER BY b.rows DESC SELECT object_name (i.id) TableName, rows as RowCnt FROM sysindexes i INNER JOIN sysObjects o ON (o.id = i.id AND o…
SQL Server 中字符类型包括varchar.char.text等.主要用于存储字符数据.varchar和char类型的主要区别在于数据填充.例如,一个列名为FirstName且数据类型为varchar(20)的表,同时将值Brian存储到列FirstName中,那么物理上只存储5个字节.但如果在数据类型为char(20)的列中存储相同的值,将使用全部的的20个字节.SQL将插入拖尾空格来填满20个字符. 注:有这么一个问题,如果要节省空间,那么为什么还要使用char数据类型呢?这是因为使…
--创建测试表 )) 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…
刚换SQL Server2008 不久,感觉运行速度.编辑提示都比05版的提升不少,但是在维护考试系统中遇到一个05中没有的问题:05中有“打开表”可以编辑所有数据行,到了08变成了“打开前1000行”和“编辑前200行”:考试系统中的数据怎么也有几千行,怎么编辑以后的数据?                       方法一:修改设置         进入"工具"---选项---SQL Server对象资源管理器---命令---“编辑前<n>行”,值改为1000(自定).…
表中有这样的记录,简单的主子表,现要想通过left join 语句把两表关联起来 select * from tbl_diary_reback a left join tbl_diary_reback_files s on a.id =s.diaryrebackid where diaryid = '-7e0f6876:1400eb06d1f:-7fed' and diaryrebackid = '1a75114e:140136e5d5f:-7ff3' 由于子表是两条不同数据,会出现两条记录.如…
DECLARE CountTableRecords CURSOR READ_ONLY FOR SELECT sst.name, Schema_name(sst.schema_id) FROM sys.tables sst WHERE sst.TYPE = 'U' ), ) OPEN CountTableRecords FETCH NEXT FROM CountTableRecords INTO @name, @schema ) BEGIN ) BEGIN PRINT @name ) SET @s…
https://bbs.csdn.net/topics/120000749 http://www.cnblogs.com/s021368/articles/2148659.html 问题: udpate  a   set   column1   =   1   where   idx   =   1 sqlserver   执行update语句的时候,是锁整张表的吧 分析: 看表结构,   如果没有主键无法只锁定行 如果楼主要验证的话,   只需要类似下面的方法就行了: --   开事务,  …
oralce中使用 count 函数判断 行数 需要注意 一定是count 有值的字段,接下来看一组语句 --查询数据 select * from kk_create_ka where auto_id='D7313B4716AD4062B82D3CD8513DA7A8'; --count select count(I_E_Flag) from kk_create_ka where auto_id='D7313B4716AD4062B82D3CD8513DA7A8'; select count(*…