Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%)
|
Bardzo prosty problem.
Mamy tabelę z wiadomościami - id odbiorcy i id wysyłającego. Chcę stworzyć listę konwersacji czyli po jednej wiadomości z każdej konwersacji. 1 | 2 1 | 2 1 | 3 3 | 1 2 | 1 Wynik oczekiwany dla useraID: 1 - po jednej, ostatniej wiadomości z każdej rozmowy. 2|1 1|3 Niby proste ale wszystkie moje wariacje SELECTa zwracają ładnie po jednej wiadomości ale dla rozmów gdzie była odpowiedź zwraca 2 wiersze 1|2 i 2|1 traktując to jako osobne rozmowy. Jedna z prób:
Jak wytłumaczyć bazie że 1|2 to dla mnie to samo co 2|1 i nie chcę aby się powtarzało? Inna próba z takim samym rezultatem:
Ten post edytował markonix 16.11.2013, 23:21:45 |
|
|
|
markonix Unikalne pary 16.11.2013, 23:18:52
werdan http://sqlfiddle.com/#!2/e9642/2
[SQL] pobier... 17.11.2013, 07:58:53
markonix To była moja pierwsza próba i faktycznie pokazuje ... 17.11.2013, 13:48:25
redeemer Może tak: [SQL] pobierz, plaintext SELECT IF... 17.11.2013, 14:34:22
markonix No właśnie zanim zeedytowałeś zacząłem przerabiać ... 17.11.2013, 15:25:42
redeemer Ok, w końcu zrozumiałem o co tak naprawdę chodzi
... 17.11.2013, 18:02:40
markonix Rozumiem, że sztuczne kolumny odnoszą się do rozwi... 17.11.2013, 20:11:11
redeemer Te dwie propozycje wydajnościowo powinny być tożsa... 18.11.2013, 13:23:06
markonix No tak, ale wspomniałeś o tymczasowych kolumnach i... 18.11.2013, 16:41:43 ![]() ![]() |
|
Aktualny czas: 24.12.2025 - 18:59 |