![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 1.06.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Jak uzyskać w wyniku następującego zapytania rekordy z unikalnym ID?
![]() ![]() |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 0 Dołączył: 27.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Poszukaj o DISTINCT i/lub GROUP BY
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 1.06.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 3 Dołączył: 21.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
nie chce mi się wierzyć że wyskakują jakieś błędy z wykorzystaniem GROUP BY, pokaż select-a swojego albo spróbuj tak:
rozumiem ze tabela 1 i 3 mają te same id
Ten post edytował styx 22.06.2007, 21:50:54 -------------------- "Istotne problemy naszego życia nie mogą być rozwiązane na tym samym poziomie myślenia, na jakim byliśmy kiedy je tworzyliśmy". A.Einstein
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 1.06.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Oto wynik Twojej wersji zapytania styx, po małej korekcie:
![]() Niestety z podzapytaniem też nie działa. Znalazłem dwa inne rozwiązania, nie do końca idealne, bo chciałem to rozwiązać jednym zapytaniem. 1. Dwa zapytania. W pierwszym robię select tylko z ID i grupuję je. W wyniku dostaję unikalne ID spełniające dany warunek, które następnie zapisuję do tablicy. W drugim zapytaniu za warunek podstawiam tablicę, w której mam numery ID. 2. W zapytaniu robię konwersję pola tekstowego na varchar. Wadą tego rozwiązania w przypadku SQL Server 2000 jest to, że przytnie tekst do 256 znaków. W SQL Server 2005 nie ma tego problemu, gdyż jest varchar(max) mieszczący 2GB danych. nie chce mi się wierzyć że wyskakują jakieś błędy z wykorzystaniem GROUP BY...
Ten post edytował witosza 27.06.2007, 13:46:26 |
|
|
![]() ![]()
Post
#6
|
|
![]() Administrator serwera Grupa: Developerzy Postów: 521 Pomógł: 13 Dołączył: 2.04.2004 Skąd: 52°24' N 16°56' E Ostrzeżenie: (0%) ![]() ![]() |
@styx: utrudniasz sobie życie
![]() @witosza: ja bym wyciągnął prostym selectem unikalne ID z tabeli pierwszej i jako podzapytanie wstawił do złączenia ![]() -------------------- Środowisko: Gentoo 2008.0 | Apache | PHP5 | PostgreSQL | MySQL | Postfix
Workstation: Gentoo 2008.0 | Firefox Thomas Alva Edison: "Aby coś wynaleźć wystarczy odrobina wyobraźni i sterta złomu ..." Odpowiedź na każde pytanie typu "Jak ...": "Nie da się, to nie PostgreSQL" |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 1.06.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Czy chodziło Ci o coś takiego?
![]() Takie podzapytanie też się nie sprawdza. Jeśli miałeś na myśli coś innego, to napisz co konkretnie. @styx: utrudniasz sobie życie
![]() @witosza: ja bym wyciągnął prostym selectem unikalne ID z tabeli pierwszej i jako podzapytanie wstawił do złączenia ![]() Ten post edytował witosza 27.06.2007, 13:49:02 |
|
|
![]() ![]()
Post
#8
|
|
![]() Administrator serwera Grupa: Developerzy Postów: 521 Pomógł: 13 Dołączył: 2.04.2004 Skąd: 52°24' N 16°56' E Ostrzeżenie: (0%) ![]() ![]() |
Idea takich zapytań opiera się na:
![]() -------------------- Środowisko: Gentoo 2008.0 | Apache | PHP5 | PostgreSQL | MySQL | Postfix
Workstation: Gentoo 2008.0 | Firefox Thomas Alva Edison: "Aby coś wynaleźć wystarczy odrobina wyobraźni i sterta złomu ..." Odpowiedź na każde pytanie typu "Jak ...": "Nie da się, to nie PostgreSQL" |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 23:19 |