sql >> データベース >  >> RDS >> Oracle

単一のテーブルからさまざまなレベルのデータを作成するOracleSQL

    再帰CTEを使用できます:

    WITH CTE(ITEM_VALUE, ITEM_ABOVE, DESCRIPTION, ITEM_GROUP) AS 
    (
       SELECT ITEM_VALUE, ITEM_ABOVE, DESCRIPTION, DESCRIPTION AS ITEM_GROUP
       FROM mytable
       WHERE ITEM_ABOVE = 'CAR'
    
       UNION ALL
    
       SELECT t1.ITEM_VALUE, t1.ITEM_ABOVE, t1.DESCRIPTION, t2.ITEM_GROUP
       FROM mytable t1
       JOIN CTE t2 ON t1.ITEM_ABOVE = t2.ITEM_VALUE
    )
    SELECT ITEM_VALUE, ITEM_ABOVE, DESCRIPTION, ITEM_GROUP
    FROM CTE 
    



    1. フロートの小数点以下の桁数を取得します(小数部ありまたはなし)

    2. MySQLは主キー値を交換します

    3. Oracle実行計画

    4. Java Enums、JPA、Postgres enums-どうすればそれらを連携させることができますか?