Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Dodatkowe wirtualne kolumny
The Night Shadow
post
Post #1





Grupa: Zarejestrowani
Postów: 495
Pomógł: 2
Dołączył: 5.02.2006
Skąd: Wrocław

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


  1. <?php
  2. $pobieranie_najaktywniejszych_uzytkownikow = mysql_query("SELECT l.id, l.login, l.data, count(d.id) as ilosc FROM $tabela_datylogowan d, $tabela_logowanie l WHERE l.id = d.da
    tylogowan_id_uzytkownika GROUP BY l.id ORDER by ilosc DESC LIMIT 10"
    );
  3. ?>


Mając powyższe zapytanie pobieram listę użytkowników sortując ich w odwrotnej kolejności według ilości odwiedzin. Wszystko działa poprawnie. (Zmienne na pewno przyjmują odpowiednie wartości)

Tabele:

datylogowan
id
id_uzytkownika
data
logowanie
id
login
data

Czy istnieje możliwość takiego napisania tego zapytania, aby tworzyła się dodatkowa kolumna (wirtualna - nieistniejaca w bazie), w której widoczna byłaby ilośc wizyt każdego z tych użytkowników na dzień...?

Obliczenie powinno wyglądać tak:

  1. <?php
  2. (ceil(((ilosc/(ceil((time()-(l.data))/60/60/24)))*100))/100
  3. ?>


Gdzie ilosc pochodzi z zapytania: count(d.id) as ilosc, a data jest kolumną już istniejącą w tabeli.

Kiedy zrobić to dla każdego użytkownika po wykonaniu zapytania bez obliczeń wygląda to tak:

  1. <?php
  2. while ($dane_najaktywniejszych_uzytkownikow = mysql_fetch_assoc($pobieranie_najaktywniejszych_uzytkownikow))
  3. { 
  4. $ilosc_wizyt_dziennie = (ceil(($dane_najaktywniejszych_uzytkownikow['ilosc']/(ceil((time()-$dane_najaktywniejszych_uzytkownikow['data'])/60/60/24)))*100))/100;
  5. }
  6. ?>


Porblem polega jednak na tym, że w takim przypadku nie istnieje możliwość posortowania listy według częstotliwości odwiedzin, a jedynie według ich ilości, co może być zakłamaniem. Jeden użytkownik mógłby zarejestrować się rok temu i mieć 366 wizyt inny 2 dni temu i mieć wizyt 15, czyli odwiedzać stronę znacznie częściej.

Czy da się to jakoś rozwiązać? W skrócie chodzi o pobieranie danych z bazy danych MySQL wraz z dodatkowymi kolumnami, w których znajdowałyby się jakieś modyfikacje tych danych (tak by można było według nich sortować)...

Ten post edytował The Night Shadow 11.06.2006, 11:49:33
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: 20.12.2025 - 22:04