Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak zastąpic polecenie union?
Dimmu
post 17.06.2002, 19:57:09
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2002
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


Witam
Czy ktos wie jak bez tworzenia tabel tymczasowych zastapic polecenie union, tak by wynikiem zapytania byla tabela powstala z podzapytan?

Pozdrowienia...........Dimmu
Go to the top of the page
+Quote Post
castor
post 17.06.2002, 20:26:56
Post #2





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


bez tymczasowych tabel i bez union'a ..mhmmm..
.....specem SQL nie jestm, ale ciezko bedzie.

..a co stoi ci na przeszkodzie w uzyciu UNION?


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
Dimmu
post 17.06.2002, 21:42:12
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2002
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


Problemem jest to iz mam stara wersje MySQL na serweze a administrator (ktorym niestety nie jestem) nie pali sie by ja uaktualnic.

Pozdrowienia...............Dimmu
Go to the top of the page
+Quote Post
castor
post 17.06.2002, 21:54:17
Post #4





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


w takim razie chyba pozostaje ci wykonywanie pojedynczych zapytan i przerobka pojedynczych resultatow:)

a w skrypcie przeciez mozesz se juz tam posklejac w tablice... nic innego mi do glowy nie przychodzi sad.gif


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
Dimmu
post 17.06.2002, 22:08:34
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2002
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


No wlasnie na to tez wpadlem ale to prawie to samo co tabela tymczasowa ( a nawet mniej efektywne). Myslalem ze w strszych wersjach bylo jakies polecenie albo jakis schemat dzialania zastepujacy uniona.

Pozdrowienia..........Dimmu
Go to the top of the page
+Quote Post
castor
post 17.06.2002, 22:15:38
Post #6





Grupa: Zarejestrowani
Postów: 456
Pomógł: 0
Dołączył: --

Ostrzeżenie: (0%)
-----


ile ty rekordow przerabisz ze mowisz ze to mniej efektywne?

a sprawdzales kiedys czasy ?
.....bo cos mi sie zdaje ze sklejanie "recznie tabel" nie bedzie duzo wolniejsze od tabeli tymczasowej..tez nie sprawdzalem .... takie tylko domniewanka :wink:


--------------------
pozdrawiam
CASTOR
Go to the top of the page
+Quote Post
Dimmu
post 18.06.2002, 06:08:57
Post #7





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2002
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


Tak szczeze powiedziawsz to ja tez szczelałem, ale bazy danych z egoły są bezpieczniejsze i szybsze. Bo poptrz najwiecej czasu zajmuje połączenie z bazą, nastepne w kolejnosci jest przeslanie danych miedzy skryptem a serwerem,( skrypt wyglada tak: laczysz sie, pytasz, pytasz i sklejasz, pytasz i sklejasz ..pytasz i sklejasz) no to przy wiekszej ilosci selectow az prosi sie by zrobic to w bazie(pytasz i masz); znaczy takie jest moje zdanie. no i chyba dla takich jak ja wprowadzili tego uniona, a ja nie moge kozystac z dobrodziejstw jego.

Pozdrowienia........Dimmu
Go to the top of the page
+Quote Post
cyborg
post 22.06.2002, 08:27:32
Post #8





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: --
Skąd: Wielun-CZASTARY

Ostrzeżenie: (0%)
-----


witam
mialem ten sam problem i probowalem go rozwiazac bez zaprzegania UNION z tych samych powodow bowiem jak Ty nie moge go uzywac .Niestety poniewaz moje kombinacje nie przynosily skutku a czas uplywal wiec pozostalem przy wielu zapytaniach SELECT dla takich samych tabel o takiej samej strukturze lecz innych danych ( inne odzialy tabeli magazyny) co ogolnie wyglada jak wyglada.
Jednoczesnie w wolnych chwilach ciagle chodzi mi po glowie rozwiazanie tego problemu :idea: , w zwiazku z tym mam pytanie :?: mianowicie mysql_query wraz z poleceniem SELECT przy wlasciwym wykonaniu zwraca jako wynik identyfikator (deskryptor) pliku wynikow, czy wiesz moze jaki format ma ten plik wynikow wskazywany przez identyfikator i jak sie do niego dobrac w sposob niestandardowy. Oczywiscie mozna sobie kazdy wiersz z tego pliku skopiowac gdzies poprzez wywolywanie np mysql_fetch_array ale to trwa, mnie natomiast interesuje ten plik jako calosc wtedy moznaby np jakims poleceniem typu append (mysle ze cos takiego bedzie) polaczyc wiele wynikow w jeden wynik, oczywiscie bez jak wczesniej pisalem poslugiwania sie mysql_fetch_row czy tez mysql_fetch_array. czy ktos z grupowiczow wie cos wiecej na ten temat, chetnie poslucham.
Go to the top of the page
+Quote Post
Dimmu
post 22.06.2002, 15:08:26
Post #9





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2002
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


Witam Cyborgu, co do twojego pytania to nigdy sie nad wynikiem mysql_querry bie zastanawialem i nie jestem Ci w stanie nic sesownego poradzic. Jednak do glowy przyszla mi pewna mysl skoro mysql_querry zwraca za kazdym razem ten sam typ danych to czemu by nie napisać $dane+=mysql_querry("select.....") a dopiero na koncu nie wykonać mysql_fetch_array($dane); chyba bedzie dzialac, zaraz bede to sprawdzał.
Pozdrowienia.........Dimmu
Go to the top of the page
+Quote Post
Mistycus
post 22.06.2002, 23:39:03
Post #10





Grupa: Zarejestrowani
Postów: 234
Pomógł: 0
Dołączył: 9.04.2002
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Cytat
mysql_query wraz z poleceniem SELECT przy wlasciwym wykonaniu zwraca jako wynik identyfikator (deskryptor) pliku wynikow, czy wiesz moze jaki format ma ten plik wynikow wskazywany przez identyfikator i jak sie do niego dobrac w sposob niestandardowy.
8O Pierwsze słyszę. Zawsze myślałem, że wynik zapytania przechowywany jest w RAMie. Oczywiście mogę się mylić :?


--------------------
Pozdrawiam,
Mistycus
Go to the top of the page
+Quote Post
Dimmu
post 23.06.2002, 11:10:34
Post #11





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 17.06.2002
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


Niestery moj pomyal z łączeniem wyniku mysql_querry nie był dobry, powstawal blad.
A co do wypowiedzi Mistycusa , to ma racje ze wynik jest przechowywany w pamieci.

Pozdrowienia...............Dimmu
Go to the top of the page
+Quote Post
cyborg
post 24.06.2002, 07:55:15
Post #12





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: --
Skąd: Wielun-CZASTARY

Ostrzeżenie: (0%)
-----


cytujac za manualem : "mysql_query() zwraca TRUE lub FALSE informując czy zapytanie zakończyło się sukcesem czy też nie. ... "

"Jedynie Po operacji SELECT, mysql_query() zwróci identyfikator wyniku, który można przekazać do funkcji mysql_result(). Po zakończeniu operacji na wyniku, można zwolnić zasoby przez niego wykorzystywane wywołując mysql_free_result(). Po zakończeniu działania skryptu pamięć i tak będzie automatycznie zwolniona. " - pytanie czy zwolni deskryptor pliku zakladajac ze wynik jest plikiem czy tez zwolni pamiec przeznaczona na obszar wyniku zakladajac ze wynik jest w pamieci.

W ksiazce C.Hiltona i J. Willisa jest napisane "W przypadku pomyslnego wykonania funkcja zwraca identyfikator zbioru wynikow...".

Macie chyba racje ten zbior raczej bedzie w pamieci( z pamieci bedzie szybciej odczytywane niz z pliku) choc ostatni cyctat zamacił mi w głowie.
Ale gdyby ktos wiedział na sto procent to chetnie poslucham.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2024 - 05:32