Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL]Wyniki bez powtórzeń
adrianozo
post
Post #1





Grupa: Zarejestrowani
Postów: 733
Pomógł: 4
Dołączył: 11.11.2009

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


Witam wszystkich.

Mam pewien problem z wymyśleniem rozwiązania, którego oczekuje.
Mianowicie chcę wyświetlić dajmy na to kilka rekordów z bazy danych np. 10 no to daje:

  1. SELECT `kolumna1`, `kolumna2` FROM `tabela` LIMIT 0, 10
tylko problem jest w tym, że chciałbym żeby za każdym razem wyświetlało inne rekordy. Mam niby pomysł, ale wydaje mi się, że może niepotrzebnie wykonywać za dużo zapytań do bazy.

Dodatkowo jeśli np. wyświetlę już te 10 rekordów, a w bazie jest ich 500 to w następnej części chciałbym wyświetlić pozostałem 490 pomijając te już wyświetlone. Da się to jakoś szybko i bez zbędnych zapytań wykonać?

Z góry dziękuje za odpowiedź
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Greg0
post
Post #2





Grupa: Zarejestrowani
Postów: 264
Pomógł: 54
Dołączył: 31.08.2007
Skąd: Tychy

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


No to zapraszam do lektury wielu rozwiązań na losowe wybieranie rekordów. np. tutaj http://blog.vokiel.com/mysql-rand-jak-pobrac-losowe-wiersze/
Odnośnie drugiego problemu to gdy już pobierzesz 10 losowych rekordów, masz ich ID. Jeśli masz ich ID to wtedy pobierasz całą resztę których ID != ID losowanych.
Konkretnie to formuła
  1. WHERE NOT IN (12, 45, 1, 5) %przykładowe wylosowane ID


Ten post edytował Greg0 23.12.2013, 17:10:09
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 - 18:01