SQL语句:如何让一个字段里的值,分成几个字段显示。

B1字段里有a001,b001,c001值,如:B11a0012.b0013.a0014c0015b0016b0017a001想得到的这样结果是:D1F1G1a001b0... B1字段里有a001,b001,c001值,如: B1 1 a001 2. b001 3. a001 4 c001 5 b001 6 b001 7 a001 想得到的这样结果是: D1 F1 G1 a001 b001 c001 a001 b001 c001 这个如何用SQL语句实现,请各位大师赐教。谢谢!
问题补充,如图,B1字段里有值a001,b001,

想得到结果,D1字段里全部是a001结果,F1字段里全部是b001结果。
展开
 我来答
twvampire
推荐于2017-12-16 · TA获得超过3620个赞
知道大有可为答主
回答量:3029
采纳率:76%
帮助的人:2999万
展开全部

没怎么看懂,,,看你是不是要这样的效果吧,,,

---建立表
CREATE TABLE test(b1 VARCHAR(10))
---插入数据
INSERT INTO dbo.test
        ( b1 )
SELECT 'a01'
UNION ALL
SELECT 'b01'
UNION ALL
SELECT 'a01'
UNION ALL
SELECT 'b01'

--SELECT * FROM test
---查询
SELECT b1,(CASE WHEN b1='a01' THEN 'a01' ELSE '' END) AS d1,
(CASE WHEN b1='b01' THEN 'b01' ELSE '' END) AS f1
FROM test
结果:

a01 a01
b01 b01
a01 a01
b01 b01

 有问题再追问吧

更多追问追答
追问
想要的结果。

a01 b01
a01 b01
a01 b01
a01 b01
a01 b01
追答
。。。如果你只是想要这样的结果,直接

select b1,'a01','b01'
from 表
不就是这样的结果
showmest
2013-11-06 · TA获得超过123个赞
知道小有建树答主
回答量:204
采纳率:0%
帮助的人:163万
展开全部
如果 b1的值确定是 a001,b001的话 可以这么写

SELECT D1,F1 FROM
(SELECT DISTINCT(b1) AS D1 FROM test1 WHERE b1='a001') d1,
(SELECT DISTINCT(b1) AS f1 FROM test1 WHERE b1='b001') f1
追问

按你方法试了,是想要的结果,得到的只有一个值,是否可以D1中得到B1字段里所有的a001值。

追答
就是要统计出a001和b001的个数么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tkbh
2013-11-06 · TA获得超过531个赞
知道小有建树答主
回答量:629
采纳率:0%
帮助的人:110万
展开全部
问题再写清楚点。
追问
问题描述已经补充。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式