sql >> Databáze >  >> RDS >> Oracle

Alias ​​Název sloupce v prohlášení s více velkými písmeny

Ve stejném SELECT nelze použít aliasy sloupců doložka. Máte dvě možnosti:

Použijte poddotaz:

SELECT Alias1,
       CASE
            WHEN Alias1 = FieldA1 THEN FieldA0
            WHEN Alias1 = FieldB1 THEN FieldA1
            ELSE NULL
       END AS Alias2 
FROM (
    SELECT CASE 
                WHEN FieldA = 'TestA' THEN FieldA1
                WHEN FieldB = 'TestB' THEN FieldB1
                ELSE NULL
           END AS Alias1,
           FieldA1
           FieldB1
    ...)

nebo můžete zopakovat logiku, kterou jste použili v prvním CASE :

SELECT CASE 
            WHEN FieldA = 'TestA' THEN FieldA1
            WHEN FieldB = 'TestB' THEN FieldB1
            ELSE NULL
       END AS Alias1,
       CASE 
            WHEN FieldA = 'TestA' THEN FieldA0
            WHEN FieldB = 'TestB' THEN FieldB0
            ELSE NULL
       END AS Alias2



  1. Barman 2.11:barman-cloud-restore a barman-cloud-wal-restore

  2. wampserver 2.2 64x nemohl provést položku nabídky (interní chyba)[Výjimka] Nelze provést akci spuštění:název adresáře je neplatný

  3. Jak exportovat výsledky dotazu do souboru CSV v SQL Developer (Oracle)

  4. START TRANSACTION uvnitř kontextu BEGIN ... END nebo mimo syntaxi a LOOP