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

Sådan fjerner du dublerede kolonner fra join i SQL

Da du forespørger i tabellen med '*', vil du altid få alle kolonnerne i begge tabeller. For at udelade denne kolonne, skal du manuelt navngive alle kolonner, du vil forespørge på. For at imødekomme dit andet behov skal du blot indsætte en dummy-kolonne til hver klausul i fagforeningsforespørgslen. Nedenfor er et eksempel, der burde fungere for at tillade det, du ønsker -

SELECT customer.customerid, customer.customername, customer.customeraddress, newspapername, magazinename, enddate, publishedby FROM customer INNER JOIN (select customerid, newspapername, null Magazinename, enddate, n.publishedby from newspapersubscription ns, newspaper n where publishedby in(select publishedby from newspaper where ns.newspapername = n.NewspaperName) UNION select customerid, null newspapername, Magazinename, enddate, m.publishedby from magazinesubscription ms, magazine m where publishedby in(select publishedby from magazine where ms.Magazinename = m.MagazineName)) on customer.customerid = customerid ORDER BY customer.customerid;

  1. SQL-injektionsangreb med php

  2. Parse SQL via Oracles JDBC-driver

  3. Dynamisk rækkevidde under hentning af poster fra databasen

  4. Tæl alle poster, der ikke eksisterer, til anden tabel - SQL Query