Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 1 045 Pomógł: 5 Dołączył: 8.11.2004 Skąd: trójmiasto Ostrzeżenie: (0%)
|
Witam,
Mam zapytanie SELECT ... LEFT JOIN jako że z jedym wierszem głównej tabeli jest powiązanych kilka wierszy podrzędnej tabeli łączonej za pomocą LEFT JOIN, w wyniku dostaje kika wierszy z głównej tabeli, czy da się zrobić coś w rodzaju DISTINCT dla LEFT JOIN |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 8.02.2011 Ostrzeżenie: (0%)
|
Mam dokładnie ten sam problem
Potrzebuję konstrukcji która zachowa się tak jakbym zrobił 'DISTINCT LEFT/RIGHT JOIN'. Postaram się to zobrazować. Mam tabele: sms (id, id_zadanie, data) zadanie(id) Czasem jest wysyłanych kilka smsów do jednego zadania. Dlatego NIE jest dla mnie istotne który wiersz id_zadanie będzie połączony z tabelą sms (bo każdy połączny wiersz z tabeli zadanie jest taki sam dla wiersza z tabeli sms) Ważne, żeby był jeden! (a inner/left/right/natural join zwróci wszystkie pasujące z tabeli zadanie). Jest to sytuacja typowa dla konstrukcji 'DISTINCT ON'. Nie mogę użyć DISTINCT ON, bo klauzula ORDER BY musi być inicjowana kolumną wymienioną w DISTINCT ON . A chcę sortować np. po dacie. PS.Proszę o konkretne odpowiedzi. Problem rozwiązany. Dla zainteresowanych.: Nie ma de facto konstrukcji w rodzaju distinct join. Ale da się to obejść robiąc zapytanie z inner join oraz funkcją okienkową rank(). |
|
|
|
php programmer distinct dla left join 9.01.2008, 11:09:04
kszychu Nie szybciej by było to sprawdzić samemu? 9.01.2008, 11:10:03
php programmer Ale co sprawdzić?
Ja sie pytam jak zrobić coś taki... 9.01.2008, 11:16:39
jastu Ale jak chcesz to połączyć ? Tabele bazową z piews... 9.01.2008, 11:34:47
php programmer dobra, rozwiązałem to już po swojemu,
problem jest... 9.01.2008, 11:56:21
mefjiu Mam dokładnie takie sam problem proszę o pomoc kog... 17.12.2008, 16:18:16
mkozak Nie możesz zrobić po prosty podzapytania
SELECT D... 28.02.2011, 14:20:07 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 21:03 |