Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Problem z zapytaniem
zaaap
post
Post #1





Grupa: Zarejestrowani
Postów: 106
Pomógł: 0
Dołączył: 13.11.2008

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


Witam,
Przetwarzając dane z formularza aby wyfiltrować tylko okreslone wyniki natrafilem na problem.
Na poczatek struktura:

PRACOWNICY (ID_pracownik, imie, nazwisko)
POMIESZCZENIA (ID_pomieszczenie, nazwa)
LOGI (ID_logi, ID_pomieszczenie, ID_pracownik, data (timestamp))

W tabeli logi wrzucane są ID pracownika i ID pomieszczenia oraz data wrzucenia. Stworzylem zapytanie zeby wyciagnac okreslone dane, i np:
  1. SELECT pracownicy.imie, pracownicy.nazwisko, nazwa, zatrudniony, DATA
  2. FROM (
  3. SELECT ID_pracownik, ID_pomieszczenie, DATA FROM logi WHERE ID_pracownik =3
  4. ) log, logi, pracownicy, pomieszczenia
  5. WHERE pracownicy.ID_pracownik = log.ID_pracownik
  6. AND pomieszczenia.ID_pomieszczenie = log.ID_pomieszczenie

Tutaj działa ok.

Natomiast nie wiem jak to pożenić z datą, kiedy daje zapytanie jak poniżej wypluwa mi 12 wyników zamiast 2, czyli robi iloczyn kartezjanski, który nie wiem jak wyeliminować.
  1. SELECT pracownicy.imie, pracownicy.nazwisko, nazwa, zatrudniony, log.DATA
  2. FROM (
  3. SELECT ID_pracownik, ID_pomieszczenie, DATA FROM logi WHERE ID_pracownik =3 AND (DATA >= '1970-01-01 00:00:00' AND DATA <= '2012-12-31 00:00:00')
  4. ) log, logi, pracownicy, pomieszczenia
  5. WHERE pracownicy.ID_pracownik = log.ID_pracownik
  6. AND pomieszczenia.ID_pomieszczenie = log.ID_pomieszczenie


Macie jakieś pomysły?

Ten post edytował zaaap 27.12.2012, 19:05:12
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 21.08.2025 - 16:53