Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]Czy jest sens łączenia takich zapytań do bazy danych?
Forum PHP.pl > Forum > Przedszkole
bogdan89
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ć?
Kszyhuu
A po co chcesz to połączyć?
bogdan89
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ść.
Kszyhuu
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.
bogdan89
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
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.