sql如何将一张表中的一列数据分为两列显示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql如何将一张表中的一列数据分为两列显示相关的知识,希望对你有一定的参考价值。

就是把一张表格 如
卡号 00001 金额 1000
卡号 00001 金额 10
卡号 0002 金额 1000
卡号 0003 金额 1000
改为
卡号 00001 金额 1000 10
卡号 0002 金额 1000 0
卡号 0003 金额 1000 0

参考技术A 目前找到一个办法。

select id,max(money),sum(money)-max(money)
from tt
group by id本回答被提问者和网友采纳

sql server里如何将一组用逗号分隔的字符串分解并插入到另一张表中,比如:11873,27827, 也可能是好多

有这么一个字符串,最后结果:

1.得到这个字符串。如:111,222,333
2.得到带","字符串的长度。如:11
3.用replace把","去掉,得到长度。如:9
4.到这步,我们就知道,这个字符串有2个逗号,也就是说,有3个有效数据。
5.用while,substring开始循环得到数据,然后插入到表中
如:
set count=0
while(coung<3)--我们已经知道就3个有效数据
begin
set value=substring()---截取到第一个”,“,得到第一个有效数据
执行insert语句。
end追问

麻烦您能帮我简单写一下吗? 我没弄明白哦,谢了

追答

看我写的东西,你思路有没有?

追问

呵呵!就是截取那儿有点不知道怎么写,循环截取

追答

1111,2222,3333
substring()从开头开始截取,截取到“,”位置
这样是不是1111被你截取到了?
然后,把截取出的字符串,在原来的字符串中干掉。也就是说,把"1111,"在原来的字符串中去除掉
那么下面的字符串变成2222,3333
再按照上面的方法,截取。

追问

哦!谢谢啦

追答

客气。你肯定能搞定它。

追问

呵呵!在你的帮助下,必须的

参考技术A 首先,两个表需要有关联字段

UPDATE [插入的表名] SET [字段]=B.[取数表字段]
FROM [插入的表名] A,[取数表] B
WHERE A.[关联字段]=B.[关联字段]

以上是关于sql如何将一张表中的一列数据分为两列显示的主要内容,如果未能解决你的问题,请参考以下文章

sql server 中有一张表,我想把表中两列的数据合并后插入本表中另一列!请问怎么实现

SQL 怎么将一列中的数据按一个分隔符分成多列显示

SQL 显示一张表中的数据并计算另一张表中的结果

如何在mysql的一张表中显示2个不同的数据(两个条件)

SQL关联两张表查数据,结果只显示一条。

SQL关联两张表查数据,结果只显示一条。