㈠ sql语句 拆分
select 这个地方就是查询的字段,然后IP是自定义的名字 'IP'=substring(拆分的字段名,b.number,charindex('拆分的符号',拆分的字段名+',',b.number)-b.number) from 你的表名 a
inner join master.dbo.spt_values b on b.number between 1 and len(拆分的字段名)
and substring(','+拆分的字段名,b.number,1)='拆分的符号'
where b.type='P' 后边可以是条件 and Id=1
㈡ sql 拆分行数据
create or replace procere lpc_aa as
j number(38, 0);
k number(38, 0) default 0;
begin
for i in (select name, qty from lpc_001) loop
while (k < i.qty) loop
j := round(dbms_random.value(1, 10));
if (k + j > i.qty) then
j := i.qty - k;
end if;
insert into lpc_002 values (i.name, j);
k := k + j;
end loop;
k := 0;
end loop;
exception
when others then
rollback;
commit;
end;
用循环之类的把他插入到表中就行。不知道这个可不可以满足你的要求。
㈢ 如何实现sql里的拆分查询
select * from tb where charindex(',2,',','+content+',')>0
㈣ SQL如何把多条数据拆分
drop table test
create table test
(
VID int primary key,
VNum int,
vname varchar(10),
score int
)
insert into test values(1,001,'大海',20)
insert into test values(2,001,'大海',30)
insert into test values(3,001,'大海',40)
drop function fn_test
alter function fn_test
(
@vnum int
)
returns varchar(20)
as
begin
declare @str varchar(20)
select @str = isnull(@str+',','') + cast(score as varchar(2)) from test
return @str
end
go
select top 1 vid,vnum,vname,dbo.fn_test(vnum) as '分数' from test
/**
vid vnum vname 分数
----------- ----------- ---------- --------------------
1 1 大海 20,30,40
(所影响的行数为 1 行)
**/
可以了 呵呵呵呵呵
***********************************************************************************************这个是在SQL SERVER里执行的啊****************
㈤ SQL 一个字段进行拆分
建议你使用导出纯文本,之后采用ultraedit处理替换间隔符,然后对应建立一个表再导入回去即可。
也是比较省力气的。
㈥ SQL拆分语句
已知4个参数, 然后根据此参数 插入数据到表2中 不会吗?
While循环写入或者循环生成SQL插入语句 一次性运行插入语句
㈦ SQL如何进行表的拆分
1.复制表结构及数据到新表
create table 新表 select * from 旧表 where ...
2.只复制表结构到新表
create table 新表 select * from 旧表 where 1=2 (即:让where条件不成立)
3.复制旧表的数据到新表(假设两个表结构一样)
insert into 新表 select * from 旧表
4.复制旧表的数据到新表(假设两个表结构不一样)
insert into 新表(字段1,字段2,.......) select 字段1,字段2,...... from 旧表.
㈧ 关于SQL拆分的问题
你的意思是你的状态位里面是一个逗号分开的字符串?
如果是Oracle ,
或者MS Sql 2000以上
就可以用function 来做
MSSQL 的。。。Oracle 也非常类似。。不过我没有环境,也就没有调过:-)
CREATE FUNCTION GET_STATUS(@CODES VARCHAR(20) RETURN VARCHAR(100)
AS
BEGIN
declare @status_list varchar(100)
declare @status_name varchar(20)
declare @
--1.init
set @status_list = ''
set @status_name = ''
--2.open cursor
declare cursor csstatus for
select [name] from STATUSTABLE where PATINDEX( '%' + convert( varchar(10), code) + '%' ,@CODES ) >0
open csstatus
--3.logic
fetch next from csstatus into @status_name
if @@fetch_status = 0
begin
set @status_list = @status_name
end
fetch next from csstatus into @status_name
@while @@fetch_status = 0
begin
set @status_list = @status_list + ',' + @status_name
fetch next from csstatus into @col_name
end
--2>.release column list
close csstatus
deallocate csstatus
--4.return
return @status_list
END
㈨ sql中如何拆分字段
把数据复制-粘贴到excel中。
然后点击[数据]-[分列]
选择[分隔符号]-选择空格后,下一步--完成分列。
然后在把数据拷贝回access即可。
㈩ sql数据库表的拆分
参考语句:
select code,
sum(case when play_id=1 then cnt else 0 end ) play_id01,
sum(case when play_id=1 then cnt else 0 end ) play_id02,
sum(case when play_id=1 then cnt else 0 end ) play_id03
form 表
group by code