有一张表,如下 NAME AAAA BBBB CCCC TOM 1 2 3 JACK 3 4 6 jaccy 4 8 7 lina 9 3 1
输出 TOM CCCC 3 JACK CCCC 6 JACCY BBBB 8 LINA AAAA 9 ------解决思路---------------------- WITH T AS (SELECT 'TOM' AS NAME ,'1' AS AAAA ,'2' AS BBBB ,'3' AS CCCC FROM DUAL UNION ALL SELECT 'JACK' ,'3' ,'4' ,'6' FROM DUAL UNION ALL SELECT 'JACCY' ,'4' ,'8' ,'7' FROM DUAL UNION ALL SELECT 'LINA' ,'9' ,'3' ,'1' FROM DUAL) SELECT NAME ,DECODE(GREATEST(AAAA, BBBB, CCCC), AAAA, 'AAAA', BBBB, 'BBBB', CCCC, 'CCCC') ,GREATEST(AAAA, BBBB, CCCC) FROM T