Zastanawiałem się, czy istnieje sposób, aby to zrobić wyłącznie w sql:
q1 = SELECT campaign_id, from_number, received_msg, date_received
FROM `received_txts` WHERE `campaign_id` = '8';
INSERT INTO action_2_members (campaign_id, mobile, vote, vote_date)
VALUES(q1.campaign_id, q1.from_number, q1.received_msg, q1.date_received);
Uwaga: q1 zwróci około 30 000 wierszy.
Czy jest jakiś sposób, aby zrobić to, co próbuję powyżej w prostej sql? Aby po prostu wyciągnąć dane bezpośrednio z jednej tabeli (w zasadzie surowej tabeli danych) i wstawić do innej tabeli (w zasadzie przetworzonej tabeli danych)?
INSERT INTO ... SELECT
zestawieniem?INSERT
dla całego rzędu
dla wybranej kolumny
źródło
Odpowiedź zerkms jest poprawna. Ale jeśli ktoś chce wstawić dodatkową tabelę do tabeli, możesz uzyskać ją z następujących opcji:
W powyższym zapytaniu są 2 dodatkowe kolumny o nazwie e - mail i aktualny czas .
źródło
źródło
Analiza
Możemy użyć powyższego zapytania, jeśli chcemy skopiować dane z jednej tabeli do innej tabeli w mysql
Wyniki wykonania
1 wykonane zapytanie, 1 sukces, 0 błędów, 0 ostrzeżeń
Zapytanie: wstaw do obrazu wstępnego (identyfikator_statku, status_początkowy, rozszerzenie_pliku, identyfikator_ recenzenta, identyfikator_dostawcy, został usunięty, ostatnia aktualizacja) wybierz ...
Dotyczy 5 rzędów
Czas realizacji: 0,385 sek. Czas transferu: 0 sek. Całkowity czas: 0,386 sek
źródło