Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Łączenie podobnych zapytań sql
Forum PHP.pl > Forum > Przedszkole
Blackall
Witam,

Mój problem polega na tym, że mam do wykonania ogromną ilość (kilkadziesiąt, kilka setek i tak w kółko dla kolejnych danych) zapytań sql, które niewiele się od siebie różnią.
Póki co wykonuje je wlaśnie w pętli, jednak każdorazowe łączenie się z bazą powoduje spore obciążenie.. Nie da się ich jakoś połączyć? Goglowałem na prawde sporo ale nie potrafie nic znalezc, a dałbym sobie głowe uciąć, że słyszałem o tego typu optymalizacji..
nospor
1) UNION
2) A moze napisz konkretnie co robisz to będzie nam zdecydowanie łatwiej ci pomóc
Blackall
generalnie pobieram curlem stronę, na której wyszukuje informacji które mnie interesują. Takich informacji jest tam sporo, generalnie są to ceny wyciągane z kalendarza, czyli plus minus 300 wartości (bo kalendarz jest na rok).

Teraz chce dla każdego dnia dodać ceny do bazy.

A takich stron mam do przetworzenia ok 400 smile.gif



edit: udało sie w koncu znalezc dobre rozwiazanie.

Kod
INSERT INTO tabela (sta, sto)
SELECT 'aaa', 'bbb'
UNION ALL
SELECT 'aaa', 'ccc'
UNION ALL
SELECT 'aaa', 'dcc'


itd
smile.gif

ok, można to również zrobić przez insert into table (a,b,c) values ( ... ), (...), itd


teraz ciekawsze pytanie - jak poradzić sobie z updatem? Bo tu niestety ani nie działa sposób podobny do tego co napisałem wyżej, ani union all. Google też nie mówią nic.. :/
wowo86
nie wrzucaj insertów do bazy tymi unionami ;-) zrób normalnie insert into foo (kolumna) values (wartosc1), (wartosc2) itd.
z update'ami poczytaj o PDO i prepared statements. generalnie 300 zapytań do bazy to jeszcze żadne szaleństwo, chyba że masz słaby hosting ;-)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.