PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Usuń zduplikowaną kolumnę po zapytaniu SQL

Najbardziej eleganckim sposobem byłoby użycie USING klauzula w wyraźnym warunku dołączenia:

SELECT houseid, v.vehid, v.epatmpg, d.houseid, d.trpmiles
FROM   vehv2pub v
JOIN   dayv2pub d USING (houseid)
WHERE  v.vehid >= 1
AND    d.trpmiles < 15;

W ten sposób kolumna houseid jest w wyniku tylko raz , nawet jeśli używasz SELECT * .

Zgodnie z dokumentacją:

Aby uzyskać średnią epatmpg dla wybranych wierszy:

SELECT avg(v.epatmpg) AS avg_epatmpg
FROM   vehv2pub v
JOIN   dayv2pub d USING (houseid)
WHERE  v.vehid >= 1
AND    d.trpmiles < 15;

Jeśli istnieje wiele dopasowań w dayv2pub , tabela pochodna może zawierać wiele wystąpień każdego wiersza w vehv2pub po połączeniu. avg() jest oparty na tabeli pochodnej.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Analiza sonaru zajmuje dużo czasu

  2. BŁĄD:odmowa uprawnień dla schematu user1_gmail_com o znaku 46

  3. Jak zmienić wynik zapytań SQL z LIMIT w każdym zapytaniu?

  4. Jak wyświetlić WORK_MEM zewnętrznych połączeń PostgreSQL?

  5. Jaki jest właściwy sposób korzystania z modułu postgresql node.js?