CREATE TABLE na podstawie złączenia INNER JOIN

0

Jak stworzyć nową tabelę (CREATE TABLE), która będzie posiadała wspólne rekordy z 2 tabel złączonych na podstawie INNER JOIN?

Struktura dla 2 tabel jest taka jak niżej oraz tabela nr 3 również powinna mieć tę samą strukturę.

idp INT NOT NULL AUTO_INCREMENT,
nazwa VARCHAR(50) NOT NULL,
autor VARCHAR(100) NOT NULL,
PRIMARY KEY (idp)

Zapytanie sql wybierające wspólne rekordy dla tabel.

SELECT tabela1.nazwa, tabela1.autor
FROM tabela1 
INNER JOIN
    tabela2 ON 
        tabela1.nazwa = tabela2.nazwa AND tabela1.autor = tabela2.autor;
1
create table nazwa_tabeli as select ... from ... join ...

a w mssqlu

select ... into nazwa_tabeli from ... join ... 
0

@abrakadaber: Dzięki! Nie znałem tego :)

0

A nie możesz użyć po prostu VIEW? Albo w tej nowej tabeli trzymać tylko id rekordów z tamtych tabel? Po co po raz trzeci duplikować te same dane?

0

@tajny_agent: pewnie nie wie, że tak można skoro chce trzymać wynik selecta w trzeciej tabeli, albo ma poważny powód do takiej a nie innej organizacji. Zgadzam się, że widok byłby lepszym rozwiązaniem niż tworzenie kolejnej tabeli.

1 użytkowników online, w tym zalogowanych: 0, gości: 1