Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL]Czy jest sens łączenia takich zapytań do bazy danych?
bogdan89
post
Post #1





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

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


Witam, prosiłbym o nakierowanie na rozwiązanie problemu.

Zapytanie 1:
  1. SELECT CEIL(((wartosc1 - wartosc2) / wartosc1) * 100) AS roznica_w_procentach FROM tabela ORDER BY roznica_w_procentach DESC LIMIT 1

zapytanie to zwraca mi największą procentową różnicę pomiędzy wartościami z pośród wszystkich rekordów z tabeli

Zapytanie 2:
  1. SELECT (wartosc1 - wartosc2) AS roznica FROM tabela ORDER BY roznica DESC LIMIT 1

z kolei to drugie zapytanie zwraca mi największą różnicę pomiędzy wartościami z tabeli

Oba zapytania oczywiście są wykonywane na tej samej tabeli i tych samych danych.

Moje pytanie: Czy jest sens łączenia takich zapytań? No i co ważniejsze, jak takie zapytanie wykonać?
Go to the top of the page
+Quote Post
Kszyhuu
post
Post #2





Grupa: Zarejestrowani
Postów: 157
Pomógł: 32
Dołączył: 24.08.2009

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


A po co chcesz to połączyć?
Go to the top of the page
+Quote Post
bogdan89
post
Post #3





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

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


Cytat(Kszyhuu @ 28.03.2010, 22:48:39 ) *
A po co chcesz to połączyć?


Nie wiem jeszcze czy chce... poza tym nie wiem jak. Z MySQL nie jestem na zbyt wysokim poziomie.
Moim pytaniem jest czy jest sens łączyć takie zapytania...

Po co połączyć?
Chciałbym za pomocą jednego zapytania wyciągnąć dwie różne, największe wartości, które wynikają z posortowania, czyli jedną tabelę, za pomocą jednego zapytania musiałbym posortować dwa razy, za każdym razem wyciągając tą wartość.
Go to the top of the page
+Quote Post
Kszyhuu
post
Post #4





Grupa: Zarejestrowani
Postów: 157
Pomógł: 32
Dołączył: 24.08.2009

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


Nie wiem, ja na Twoim miejscu bym się nie bawił w ich łączenie, ale jeżeli już się uprzesz, to łap:
http://www.cs.put.poznan.pl/tpd/sbd1/slajd...odzapytania.pdf
Czy tam:
http://www.cs.put.poznan.pl/tpd/sbd1/slajd...4Polaczenia.pdf
Nie pamiętam w którym to było.

Ten post edytował Kszyhuu 29.03.2010, 18:29:20
Go to the top of the page
+Quote Post
bogdan89
post
Post #5





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

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


Ahh... sorry, że zawracałem głowy smile.gif Mój problem okazał się banalnie prosty do rozwiązania.
Właściwie problemem nie było stworzenie odpowiedniego zapytania, a moje złe podejście do tego zagadnienia, no ale takie właśnie są skutki niemalże codziennej pracy po kilkanaście godzin przy komputerze.

Żeby nie było, że się wymądrzam, a nie pokaże mojego rozwiązania:
  1. SELECT MAX(((wartosc1 - wartosc2) / wartosc1) * 100) AS roznica_w_procentach, MAX(wartosc1 - wartosc2) AS roznica FROM tabela

Chociaż wiem, że to banał i Ameryki przecież nie odkryłem.

Ale pobawić się z MySQL muszę trochę więcej, żeby następnym razem nie szukać rozwiązania najtrudniejszego winksmiley.jpg
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 Aktualny czas: 20.08.2025 - 05:51