由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 急:问一个SQL的题目
相关主题
请教思路 数据同步有关学习了学习了!数据库火车票的高效并发实现
mySQL 问题change year format in Access by SQL query (转载)
BASH问题Python小问题
select的timeout怎么不work问一道HIVE题 关于Efficiency
问个socket编程中select()的问题。ask a Javascript question
linux select(): can file descriptors be dynamtic ?ask a C question about random number
问一个SQL随机数发生器问题请教
一个SQL的题目delete this problem
相关话题的讨论汇总
话题: col2话题: wra0020话题: oo0033话题: oo0036话题: wra0019
进入Programming版参与讨论
1 (共1页)
x**l
发帖数: 369
1
SQL新手,做PROJECT碰到这样一个问题:
用户给的一个SQL语句
SELECT * FROM a
WHERE col1 = ('DE00000009')
AND (col2 = 'WRA0020' or col2 = 'OO0036' or col2 = 'WRA0019' or col2 = '
OO0033')
返回下列结果:
year col2 col3
2009 OO0033 3440.0000
2009 OO0036 330.0000
2009 WRA0019 259.9360
2009 WRA0020 1756.3800
2010 OO0033 3750.0000
2010 OO0036 375.0000
2010 WRA0019 282.4740
2010 WRA0020 2048.8700
2011 OO0033 4210.0000
2011 OO0036 285.2200
2011 WRA0019 789.3160
2011 WRA0020 2135.9250
现在因为project需求,需要把上面的结果集处理成:
year v1 v2 v3 v4
2009 1756.3800 330.0000 259.9360 3440.0000
2010 2048.8700 375.0000 282.4740 3750.0000
2011 2135.9250 285.2200 789.3160 4210.0000
数据库是mysql,想用subselect,但总报错subquery return more than 1 row,能否请
高手帮看一下应该如何写这个SQL语句才能拿到上面的结果呢?
H*******g
发帖数: 6997
2
GROUP BY(YEAR)???再来个SUM
f*****e
发帖数: 2992
3
前面有一个用行号的应该可以满足要求。

【在 x**l 的大作中提到】
: SQL新手,做PROJECT碰到这样一个问题:
: 用户给的一个SQL语句
: SELECT * FROM a
: WHERE col1 = ('DE00000009')
: AND (col2 = 'WRA0020' or col2 = 'OO0036' or col2 = 'WRA0019' or col2 = '
: OO0033')
: 返回下列结果:
: year col2 col3
: 2009 OO0033 3440.0000
: 2009 OO0036 330.0000

b****1
发帖数: 242
4
SELECT aaa.year,
MAX(CASE WHEN aaa.col2= 'WRA0020' THEN aaa.col3 ELSE NULL END),
MAX(CASE WHEN aaa.col2= 'OO0036' THEN aaa.col3 ELSE NULL END),
MAX(CASE WHEN aaa.col2= 'WRA0019' THEN aaa.col3 ELSE NULL END),
MAX(CASE WHEN aaa.col2= 'OO0033' THEN aaa.col3 ELSE NULL END),
FROM
(
SELECT * FROM a
WHERE col1 = ('DE00000009') AND (col2 = 'WRA0020' or col2 = 'OO0036' or col2
= 'WRA0019' or col2 = 'OO0033')
) aaa
GROUP BY aaa.year
1 (共1页)
进入Programming版参与讨论
相关主题
delete this problem问个socket编程中select()的问题。
如何实现 strtok() ?linux select(): can file descriptors be dynamtic ?
how to reverse a HUGE list?问一个SQL
swap every second node?一个SQL的题目
请教思路 数据同步有关学习了学习了!数据库火车票的高效并发实现
mySQL 问题change year format in Access by SQL query (转载)
BASH问题Python小问题
select的timeout怎么不work问一道HIVE题 关于Efficiency
相关话题的讨论汇总
话题: col2话题: wra0020话题: oo0033话题: oo0036话题: wra0019