![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Witajcie, mam niby prosty problem, takie zapytanko:
- gdyż nie każda pozycja może mieć wykonanie (wtedy nie wpada do bazy, bo po co puste rekordy?), jak i nie każdy koszt jest planowany, czyli powinno dać coś w rodzaju: ID-Plan-Wykonanie 1-3-null 4-null-4 7-2-3 8-null-5 Niestety nie działa (próbowałem też FULL OUTER JOIN), wyskakuje błąd 1064 (składni) . Natomiast RIGHT i LEFT działa bez problemu. Czy to możliwe, żeby w mysql nie działało coś tak oczywistego? A może ja knocę proste zapytanie? W takim razie czy da się to jakoś inaczej napisać, bez użycia tego outer joina? Będę wdzięczny za pomoc. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 78 Pomógł: 15 Dołączył: 10.12.2007 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Nie doszukałem się w MySQL wsparcia dla FULL OUTER JOIN... ale pozostają alternatywy - chociażby przerobiony dla Twoich potrzeb przykład z wikipedii
Chyba, że jest prostszy sposób na uzyskanie tej funkcjonalności w MySQL.. ja nie znalazłem. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Działa, ale jest niestety jeszcze jeden problem, o którym zapomniałem wspomnieć - id mogą się powtarzać, bo każdy koszt ma swoje id i wpada do bazy wiele razy (pod inną datą oczywiście), więc dojdzie grupowanie i sumowanie - jak się za to zabrać w tym przypadku?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 656 Pomógł: 3 Dołączył: 26.10.2005 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
jak już połączysz tabele LEFT JOIN to wygląda to tak jakby to była jedna tabela, więc wystarczy dodać SUM i GROUP BY
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 00:18 |