我的一张表里有三个字段,id,a,b。id字段不是唯一的,a字段里有RE开头和RG开头的值,b字段是它对应的结果,有0和1两种。我现在想写sql语句,查询结果为,以RE和RG开头的两种值分成两个字段RE.a和RG.a。如图所示:

数据库语句求助(行转列)
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- bczzm 2016-06-26 10:21关注
SELECT
rg.id,
re.a,
re.b,
rg.a,
rg.b
FROM
(SELECT
t1.*
FROM
test t1
WHERE t1.a
LIKE 'RE%') re
RIGHT JOIN
(SELECT
*
FROM
test t2
WHERE t2.a
LIKE 'RG%') rg
ON re.id = rg.id
AND SUBSTRING(re.a, 3) = SUBSTRING(rg.a, 3);本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报