+ -
当前位置:首页 → 问答吧 → 求助:想把一个字段的数值分成多个列显示出来

求助:想把一个字段的数值分成多个列显示出来

时间:2011-07-05

来源:互联网

表 typeoptionvars
字段 tid,value
数值:
tid value  
2001 Y1  
2002 Y2  
2003 Y3
2001 Y4
2002 Y5
2003 Y6


希望显示出来时这样的:
tid value1 value2  
2001 Y1 Y4
2002 Y2 Y5
2003 Y3 Y6

这个SQL查询怎么写比较好

作者: teng1980   发布时间: 2011-07-05

1个TID只有2个值?
如是
select tid,max(value),min(value)
from tt group by tid

作者: wwwwb   发布时间: 2011-07-05

谢谢 我是举了3个值做例子。
另外 Y1 Y2 Y3。。。 可能是中文

作者: teng1980   发布时间: 2011-07-05

不好意思,我之前表述的有误~  
TID 是固定的 3个数值 然后它对应的value是不定的值,可能中文,也可能是数字

换句话讲 就是下面这三个查询结果 怎么合并到一个查询里 
SELECT `value`
FROM `typeoptionvars` 
WHERE tid = 2001

SELECT `value`
FROM `typeoptionvars` 
WHERE tid = 2002

SELECT `value`
FROM `typeoptionvars` 
WHERE tid = 2003

希望以这种形式出来
value1 value2 value3
Y1 Y2 Y3
Y4 Y5 Y6
。 。 。
。 。 。
。 。 。

作者: teng1980   发布时间: 2011-07-05

重新整理一下数据, 要求结果是什么贴出来

作者: WWWWA   发布时间: 2011-07-05

表结构都不确定貌似不好搞

作者: rucypli   发布时间: 2011-07-05

select b.tid,bb.value,b.value
from typeoptionvars b
left join typeoptionvars bb on bb.tid = b.tid and bb.value != b.value
GROUP BY b.tid

垃圾实现方法

作者: fixed_2008   发布时间: 2011-07-05

引用 6 楼 fixed_2008 的回复:

select b.tid,bb.value,b.value
from typeoptionvars b
left join typeoptionvars bb on bb.tid = b.tid and bb.value != b.value
GROUP BY b.tid

垃圾实现方法


有问题不用看了

作者: fixed_2008   发布时间: 2011-07-05

相关阅读 更多

热门下载

更多