Losowe wyświetlanie unikalnych rekordów

Załóżmy że mamy bazę linków i chcemy w jednym ograniczonym miejscu wyświetlić tylko kilka losowo w tym wypadku 10, w dodatku chcemy by były unikalne a więc nie dublowały się.


Posłużymy się poleceniem DISTINCT które wskaże unikalne rekordy oraz podamy rodzaj sortowania RAND() co dodatkowo wskaże rekordy losowo z różnych miejsc tabeli. Polecenie LIMIT określi nam ilość rekordów jakie chcemy pobrać.

<?
$zapytanie 
mysql_query("SELECT DISTINCT nazwa,link FROM nazwa_tabeli ORDER BY RAND() LIMIT 10")
or die(
mysql_error());

while (
$rekord mysql_fetch_array($zapytanie))
{
echo 
"<a href=\"".$rekord['link']."\">".StripSlashes($rekord['nazwa'])."</a><br/>";
}
?>

Komentarze

Popularne posty z tego bloga

phpBoard

Turbo pascal - Program sortujący liczby rosnąco

Jak poznać numer ID ostatnio dodanego rekordu do bazy danych MySQL