Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> wszystkie pary z jednej tabeli bez powtórzeń
djszaki
post 21.12.2019, 15:39:52
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 22.07.2017

Ostrzeżenie: (0%)
-----


potrzebuję pomocy, muszę z jednej tabeli wybrać wszytskie osoby i połączyć je w pary tak aby nie było powtórzeń, póki co udało mi się sparować ale nie daje rady wybrać bez powtórzeń tych samych par

select o1.id, o1.imie, o1.nazwisko, o2.id, o2.imie, o2.nazwisko from osoby o1 join osoby o2 where o1.id != o2.id

2 Ola Nowak 1 Jan Kowalski
3 Ewa Zdisanska 1 Jan Kowalski
4 Ela Oglowska 1 Jan Kowalski
1 Jan Kowalski 2 Ola Nowak
3 Ewa Zdisanska 2 Ola Nowak
4 Ela Oglowska 2 Ola Nowak
1 Jan Kowalski 3 Ewa Zdisanska
2 Ola Nowak 3 Ewa Zdisanska
4 Ela Oglowska 3 Ewa Zdisanska
1 Jan Kowalski 4 Ela Oglowska
2 Ola Nowak 4 Ela Oglowska
3 Ewa Zdisanska 4 Ela Oglowska
Go to the top of the page
+Quote Post
trueblue
post 21.12.2019, 15:58:46
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


  1. SELECT IF(o1.id_osoba>o2.id_osoba,o2.id_osoba,o1.id_osoba) AS o1_id_osoba,
  2. IF(o1.id_osoba>o2.id_osoba,o2.imie,o1.imie) AS o1_imie,
  3. IF(o1.id_osoba>o2.id_osoba,o2.nazwisko,o1.nazwisko) AS o1_nazwisko,
  4. IF(o1.id_osoba>o2.id_osoba,o1.id_osoba,o2.id_osoba) AS o2_id_osoba,
  5. IF(o1.id_osoba>o2.id_osoba,o1.imie,o2.imie) AS o2_imie,
  6. IF(o1.id_osoba>o2.id_osoba,o1.nazwisko,o2.nazwisko) AS o2_nazwisko
  7. FROM osoba AS o1 CROSS
  8. JOIN osoba AS o2
  9. WHERE o1.id_osoba<>o2.id_osoba
  10. GROUP BY o1_id_osoba, o1_imie, o1_nazwisko, o2_id_osoba, o2_imie, o2_nazwisko


lub:

  1. SELECT o1.id_osoba,o1.imie,o1.nazwisko,o2.id_osoba,o2.imie,o2.nazwisko
  2. FROM osoba AS o1
  3. INNER JOIN osoba AS o2 ON o2.id_osoba>o1.id_osoba



--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.04.2024 - 21:40