Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL]Konstrukcja zapytania
Jdwind
post
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 21.12.2007
Skąd: Stalowa Wola

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


Witam, mam zapytanie, którym pobieram z bazy z dwóch tabel dane:
  1. "SELECT pl.idplac, pl.rok, pl.miesiac, pl.podstawa, pl.dodatek1, pl.dodatek2, pl.dodatek3, pl.dodatek4, pl.dodatek5, pl.dodatek6, pl.kol10, pl.kol11, pl.kol12, pl.kol13, pl.kol14, pl.kol15, pl.kol16, pl.kol17, pl.kol18, pl.kol19, pl.kol20, pl.kol21, pl.zdrow1, pl.zdrow2, pl.kol22, pl.potr1, pl.potr2, pl.potr3, pl.zaliczka, pl.rodzinne, pl.wyplata, pr.nazwiskoimie FROM pracownicy pr LEFT JOIN place pl ON (pr.idprac = pl.idprac) WHERE pr.idprac ='" .$nazwim ."' AND (pl.rok BETWEEN '" .$rokod ."' AND '" .$rokdo ."') AND (pl.miesiac BETWEEN '" .$miesiacod ."' AND '" .$miesiacdo ."') ORDER BY pr.nazwiskoimie, pl.rok;"

i teraz, jeżeli w tabeli place nie ma rekordu to i tak w wyniku pokazuje jeden wiersz, ponieważ pobiera nazwiskoimie osoby z tabeli pracownicy. Później ładuję nagłówki tabelki i za pomocą while($row = mysql_fetch_array($rezultat)) ładuję wynik (w tym wypadku nazwiskoimie, reszta zawartości tabeli jest pusta. Jak przed załadowaniem nagówków tabelki sprawdzić, że idplac jest puste i nie ładować żadnego wiersza?

Ten post edytował Jdwind 4.09.2012, 10:42:43
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
b4rt3kk
post
Post #2





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Musisz zastosować złączenie warunkowe, tzw. "teta". Inaczej mówiąc jeśli chcesz by nie pobierało pustych pól to dodaj warunek id <> NULL.

Ten post edytował b4rt3kk 4.09.2012, 10:52:03
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: 12.10.2025 - 11:48