Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Złożone zapytanie "SELECT"
-Andrzej.W.-
post
Post #1





Goście







  1. SELECT
  2. nazwa_domeny, data_s_domeny, data_k_domeny, pr_domeny, sum(przychod) AS p, sum(koszt) AS k
  3. FROM
  4. domeny, przychody, koszty
  5. WHERE
  6. domeny.id_domeny=1 AND przychody.id_domeny=1 AND koszty.id_domeny


Powyższe zapytanie teoretycznie jest prawidłowe, ponieważ sql nie wywala błędu, natomiast w każdej kolumnie wywala mi null, mimo że kiedy wykonam osobno select kolumn pierwszej tabeli i sum kolejnych tabel, zwraca poprawne wyniki. Nie wiem w czym leży problem, jeszcze nie zgłębiałem sql, jestem póki co na etapie php, proszę o jakieś wskazówki.
Pozdrawiam.
Andrzej.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
-Andrzej.W.-
post
Post #2





Goście







@mmmmmmm nie mam pojęcia co mam z tym zrobić.

@poli25 Nie zakręcony, znam sql tylko w podstawowych podstawach.

zrobiłem sobie 3 przykładowe tabele:

domeny
id_domeny|nazwa_domeny|
--------------------------------

koszty
id_koszty|koszt(wartosc)|id_domeny|
------------------------------------------

przychody
id_przychody|przychod(wartosc)|id_domeny|
-----------------------------------------

I teraz chciałbym wydostać jednym zapytaniem id_domeny, nazwa_domeny, sum(koszt), sum(przychod).
wg. oczywiscie id domeny

próbowałem tak:
  1. SELECT id_domeny, nazwa_domeny, sum(koszt), sum(przychod)
  2. FROM domeny
  3. LEFT JOIN koszt ON domeny.id_domeny=koszt.id_domeny
  4. RIGHT JOIN przychody ON domeny.id_domeny=przychody.id_domeny
  5. GROUP BY id_domeny


wszystko ładnie pieknie, ale sum zwraca mi jakies 50-60 tys, podczas gdy faktyczna wartosc sum wynosi 120 i 450
Wszystko dobrze działa, jeśli dam tylko np. sum(koszt), ale jak są dwie sumy w 1 zapytaniu, to już jakaś masakra. Dawałem z aliasami, też guzik dało.

Ten post edytował Andrzej.W. 22.05.2013, 11:58:39
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 16.10.2025 - 16:47