Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyswietlanie 'Brak' w przypadku braku wartosci w bazie.
Forum PHP.pl > Forum > Bazy danych > MySQL
arfer
Witam,
Mam zapytanie ktore przeszukuje baze danych w poszukiwaniu wartosci zawierajacej okreslone kryteria dla danego usera, gdy jakas znajdzie wyswietla tą najnowsza. W jaki sposob moge zmodyfikowac te zapytanie aby w przypadku nie znalezienia zadnej wartosci dla danego usera wyswietlalo tekst - Brak?

  1. (SELECT team_name FROM ".DB_WYNIKI." LEFT JOIN " . DB_ZESPOLY . " USING(team_id) WHERE user_id='".$_GET['user_id']."' ORDER BY numer_id DESC LIMIT 1 ) AS team,
bpskiba
w tym konkretnym przypadku należy to załatwić modyfikując php, a nie pytanie sql

Jeżeli (mysql_num_rows($wynik)>0)
wyśwletl pole_wyniku
lub
wyświetl"brak"
kristaps
Jak napisał bpskiba, od tego jest php. Jeżeli koniecznie chcesz zrobić to w SQLu, to przyda się pewnie jakieś IF(), IFNULL() - ale to kiepska praktyka.
wiiir
Cytat(kristaps @ 28.01.2013, 18:53:46 ) *
Jak napisał bpskiba, od tego jest php. Jeżeli koniecznie chcesz zrobić to w SQLu, to przyda się pewnie jakieś IF(), IFNULL() - ale to kiepska praktyka.

Sry, ale glupoty gadasz o tych kiepskich praktykach

1. Skoro jezyk udostepnia i wspiera takie funkcje to nalezy z nich korzystac
2. Po co sobie syfić kod zbednymi if-ami na empty etc
3. Bardzo czesto nie napiszesz zapytan analitycznych bez uzycia tych funkcji
4. Wystawiając widoki na zewnątrz bardzo czesto trzeba interpretować wyniki badź brak szczatkowych danych na pozimie SQL
kristaps
Założyłem, że ewentualny brak wyniku zostanie w jakiś sposób obsłużony przez aplikację - co jest dla mnie równoznaczne chociażby z koniecznością wprowadzenia warunku. To że, jak napisałeś język udostępnia funkcje, nie jest dla mnie koniecznością używania ich "bo mam taką możliwość". No ale jak najbardziej się zgodzę, że trzeba przerzucać ciężar na bazę danych, po prostu rozwiązanie1 nie musi być lepsze od rozwiązaniu2 - bo można.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.