Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak wybrać zawartość z dwóch różnych tabel w MySQL?

Musisz użyć opcji JOIN lub UNION/UNION ALL.

Będzie to zależało od tego, czego potrzebujesz.

Powiedzmy, że chcesz mieć wszystkie wartości z tabeli 1 kolumna i tabela 2, kolumna b w oddzielnych rzędach

Możesz użyć

SELECT ColA
FROM TABLE1
UNION ALL
SELECT ColB
FROM TABLE2

Wszystkie odrębne wartości

SELECT ColA
FROM TABLE1
UNION
SELECT ColB
FROM TABLE2

I powiedzmy, że chcesz je wyświetlić w tym samym wierszu, powinny mieć jakiś klucz, który je łączy

SELECT ColA, ColB
FROM TABLE1 t1 INNER JOIN
   TABLE2 t2 ON t1.ID = t2.ID

Warto również zauważyć, że istnieją różne typy połączeń SQL

Różne sprzężenia SQL

  • JOIN:Zwróć wiersze, gdy w obu tabelach jest co najmniej jedno dopasowanie
  • LEFT JOIN:Zwróć wszystkie wiersze z lewej tabeli, nawet jeśli w prawej tabeli nie ma pasujących
  • RIGHT JOIN:Zwróć wszystkie wiersze z prawej tabeli, nawet jeśli w lewej tabeli nie ma pasujących
  • FULL JOIN:Zwróć wiersze, gdy w jednej z tabel występuje dopasowanie


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. wybrać co drugi wiersz w MySQL bez zależności od żadnego identyfikatora?

  2. Jak stworzyć bazę danych localhost za pomocą mysql?

  3. Hosting MySQL na platformie Azure, w pełni zarządzana usługa bazy danych w chmurze wprowadzana na ScaleGrid

  4. Kohana 3.1.4:Wyjątek_bazy danych [2]:mysql_connect():Odmowa dostępu

  5. MYSQL unikaj dwukrotnego wstawiania tego samego wiersza