sql >> Databasteknik >  >> RDS >> Oracle

Hur väljer man en kolumn från alla tabeller där den finns?

För att få post från en tabell måste du skriva en fråga mot den tabellen. Så du kan inte hämta ALLA poster från tabeller med specificerat fält utan en fråga mot var och en av dessa tabeller.

Om det finns en delmängd av kolumner som du är intresserad av och denna delmängd delas mellan alla tabeller, kan du använda UNION/UNION ALL-operationen så här:

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 enkla fall där du bara vill veta vilka tabeller som har uppgifter om en viss 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'

Annars måste du fråga varje tabell separat.



  1. Hur genererar/autoinkrementerar man guide på infogning utan triggers och manuella infogar i mysql?

  2. Heroku-migrering:typmodifierare är inte tillåten för typbytea

  3. PostgreSQL-fråga för att lista alla tabellnamn?

  4. använda sessioner i databasoperationer