將乙個表的字段拆分成多行

2021-05-26 02:26:40 字數 897 閱讀 5163

--分拆處理示例

create   table   table1(文章id   int,文章標題   varchar(10),作者   varchar(100),字數   int)

insert   table1   select   101, '文章標題1 ', '作者a,作者b '             ,120

union     all         select   222, '文章標題2 ', '作者x,作者y,作者z ',300

union     all         select   343, '文章標題3 ', '作者m,作者n '               ,420

go --分拆處理

declare   @i   int

select   @i=max(len(作者))   from   table1

set   rowcount   @i

select   id=identity(int)   into   #t   from   syscolumns   a,syscolumns   b

set   rowcount   0

select   a.文章id,a.文章標題

,作者=substring(a.作者,b.id,charindex( ', ',a.作者+ ', ',b.id)-b.id)

,字數=a.字數/(len(a.作者)-len(replace(a.作者, ', ', ' '))+1)

from   table1   a,#t   b

where   b.id <=len(a.作者)   and   substring( ', '+a.作者,b.id,1)= ', '

go --刪除測試

drop   table   table1,#t

mysql將乙個表拆分成多個表

有乙個5000條資料的表,要把它變成每1000條資料乙個表的5等份。假設 表名 xuesi 主鍵 kid xuesi共有5000條資料,kid從1到5000自動增長 題目 將xuesi分成5個表 每個表1000條不同的資料 方法1 create table xuesi1 select from xu...

將乙個正整數L隨機拆分成n個正整數

隨機指定範圍內n個不重複的數 最簡單最基本的方法 param min 指定範圍最小值 param max 指定範圍最大值 param n 隨機數個數 public static int randomcommon int min,int max,int n int result new int n i...

根據乙個表的字段,更新另外乙個表的字段

update table a set latesttm u.tm,latestdata u.data from select from table b inner join select max tm newesttm from table b group by stcd v on drp.tm v...