sql >> Database >  >> RDS >> Mysql

Is er een generieke oplossing om een ​​afgeleide kolomlijst in Oracle (en MySQL) uit te drukken?

Voor een MySQL-oplossing zou je een UNION . kunnen gebruiken om de namen van alle kolommen in een zoekterm met nul rijen in te stellen en vervolgens iets complexers op te vragen:

SELECT null AS a, null AS b, null AS c FROM dual WHERE false
UNION ALL
SELECT <expr>, <expr>, <expr>
FROM <realtable>...

Alleen de eerste zoekterm van een UNION definieert de kolomnamen van de hele query. Kolomnamen (of het ontbreken daarvan) in volgende zoektermen hebben geen invloed op de uiteindelijke kolomnamen.

Je moet wel het nummer weten van kolommen, maar het zou vrij eenvoudig moeten zijn om de twee zoektermen gescheiden te houden. Voor zover ik weet, werkt het zowel in Oracle als MySQL (ik heb het echter alleen in MySQL getest, niet in Oracle).



  1. Hoe kunt u zien of een PL/SQL-pakket, procedure of functie wordt gebruikt?

  2. Voeg veel rijen samen tot een enkele tekenreeks met groepering

  3. Synchroniseer offline SQLite-database met online MySQL-database

  4. SQL2008 RDL-bestand converteren naar SQL2005