Разделить запись на несколько столбцов после Row_number и Partition By

Попробуйте что-нибудь подобное

    public void writeData ( String data ) {
        try {
            FileOutputStream fOut = openFileOutput ( "settings.dat" , MODE_WORLD_READABLE ) ;
            OutputStreamWriter osw = new OutputStreamWriter ( fOut ) ;
            osw.write ( data ) ;
            osw.flush ( ) ;
            osw.close ( ) ;
        } catch ( Exception e ) {
            e.printStackTrace ( ) ;
        }
    }

    public String readSavedData ( ) {
        StringBuffer datax = new StringBuffer("");
        try {
            FileInputStream fIn = openFileInput ( "settings.dat" ) ;
            InputStreamReader isr = new InputStreamReader ( fIn ) ;
            BufferedReader buffreader = new BufferedReader ( isr ) ;

            String readString = buffreader.readLine ( ) ;
            while ( readString != null ) {
                datax.append(readString);
                readString = buffreader.readLine ( ) ;
            }

            isr.close ( ) ;
        } catch ( IOException ioe ) {
            ioe.printStackTrace ( ) ;
        }
        return datax.toString() ;
    }
1
задан Gordon Linoff 18 March 2019 в 11:33
поделиться

1 ответ

Вы можете попробовать использовать функцию с ухудшением условий.

SELECT app_id,
       MAX(CASE WHEN RN = 1 THEN MT_CARD_TYP_ID END),
       MAX(CASE WHEN RN = 3 THEN MT_CARD_TYP_ID END),
       MAX(CASE WHEN RN = 2 THEN MT_CARD_TYP_ID END),
       MAX(CASE WHEN RN = 4 THEN MT_CARD_TYP_ID END)
FROM (
    SELECT T.MT_CARD_TYP_ID, ROW_NUMBER() OVER(PARTITION BY T.APP_ID ORDER BY T.DT_CREATE) AS RN 
    FROM T_CS_FAC_CC T 
    where app_id='8F9A97B0CB5349429C44F15830EDC18F'
)t1
GROUP BY app_id 
0
ответ дан D-Shih 18 March 2019 в 11:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: