sql >> Database teknologi >  >> RDS >> Oracle

Forespørgsel i en Oracle-database med dynamiske tabelnavne

Jeg tror ikke, du kan skrive en almindelig SQL-forespørgsel med dynamiske tabelnavne.

Du kan skrive en PL/SQL-procedure, som bruger execute immediate og returnerer en markør eller noget; nogen spurgte om det i går . Hvis du bare prøver at skrive denne forespørgsel for at interagere med nogle data, er det måske det bedste bud.

Derudover kan du ændre det ved at omdanne din PL/SQL-procedure til en pipelinet funktion , og så kan du kalde det fra en SQL-forespørgsel ved hjælp af TABLE() .

Hvis det var mig, ville jeg overveje at oprette et synonym (eller en standardvisning, som bare vælger fra de dynamisk navngivne tabeller) og planlægge et job for at genskabe det, hver gang nye tabeller oprettes. Det kan være enklere end at håndtere pipelinede funktioner.




  1. Arbejder dine medarbejdere på afstand? Sådan holder du dine data sikre.

  2. Postgres:Opdater primær nøglesekvens for alle tabeller

  3. Brug af MySQL-udløsere til at logge alle tabelændringer til en sekundær tabel

  4. Hvordan kan jeg konvertere dato og klokkeslæt til dato, afkorte tiderne og efterlade mig datoerne?