Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] złożone zapytanie select, - operacja na 3 tabelach z zliczeniem wartości spełniających kryteria
zaqaz
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 8.12.2012

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


Witam,
Chciałbym prosić o pomoc w sformułowaniu zapytania sql, które jak dla mnie (od kilku godziń człowieka który musi znać sql) jest niemożliwe do wykonania.

Zadanie (na ocalenia tyłka w szkole) polega na zbudowaniu zapytanie które operuje na trzech tabelach w jednej bazie.

Tabele:
tabela users
id | name | username | email
1 | emil | zaqaz | emil@email.pl

tabela baza_ip
id | id2 | ip
1(users_id) | 42 | 255.255.255.255

tabela result

id | id2 | position | number
X | 42(users2_id) | 10 | 12

ilość rekordów w każdej z nich "ma być dowolnie duża", ponadto, w tabeli baza_ip ip może powtarzać się dowolną ilość razy, dla dowolnego id (po mojemu, wielu użytkowników z tym samym ip?)
a w tabeli results dowolne id2 może posiadać dowolną ilość rekordów z rożnymi parametrami position i number (user id=42 może mieć position 10, 12 i 3 jednocześnie, number definiuje częstotliwość dla position)
edit: a gdyby założyć, że to zakup produktu i jego ilość - dla celów zobrazowania?

wynik zapytania miałby być następujący:

na bazie ip określić imiona i maile użytkowników oraz parametry position i number
przykładowy wynik:
emil emil@email.pl 10 12
emil emil@email.pl 1 19
emil2 emil@email.pl 7 12
emil3 emil@email.pl 15 12

Tak oto przyszły hotelarz walczy o przetrwanie na informatyce.
Próbowałem skontrować sam jakieś zapytanie ale szczytem finezji było zliczenie ile rekordów ma to samo ip lub imię, to mnie przerasta.

Mam nadzieję, że znajdzie się dobra dusza które pomoże mi się z tym uporać, z góry dziękuje za wsparcie.

Ten post edytował zaqaz 8.12.2012, 09:55:27
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 22.08.2025 - 13:20