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

Hvordan vælger man en kolonne fra alle tabeller, hvor den ligger?

For at få post fra en tabel, skal du skrive en forespørgsel mod den tabel. Så du kan ikke hente ALLE poster fra tabeller med specificeret felt uden en forespørgsel mod hver af disse tabeller.

Hvis der er et undersæt af kolonner, som du er interesseret i, og dette undersæt er delt mellem alle tabeller, kan du bruge UNION/UNION ALL-operationen som denne:

select * from (
select customer_number, phone, address from table1
union all
select customer_number, phone, address from table2
union all
select customer_number, phone, address from table3
)
where customer_number = 'my number'

Eller i simple tilfælde, hvor du bare vil vide, hvilke tabeller der har optegnelser om en bestemt klient

select * from (
select 'table1' src_tbl, customer_number from table1
union all
select 'table2', customer_number from table2
union all
select 'table3', customer_number from table3
)
where customer_number = 'my number'

Ellers skal du forespørge hver tabel separat.



  1. Sådan afbrydes udførelsen af ​​en erklæring i PostgreSQL

  2. eliminer duplikerede matrixværdier i postgres

  3. Java - JDBC executeUpdate() virker ikke

  4. Beregning af procentdel af gruppeantal (*)