![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 240 Pomógł: 2 Dołączył: 5.12.2010 Skąd: Fulda Ostrzeżenie: (0%) ![]() ![]() |
Mam wpisy z własną datą: http://i.img.itunix.eu/zrzut_ekranu-13-1325378781.png
i z wpisów chce wyświetlicz wszystkie daty w ten sposób: Dni (jak to zrobić, jakie zapytanie sql?): 21-12-2011 22-12-2011 23-12-2011 24-12-2011 25-12-2011 i gdy klikne na np. "24-12-2011" to wyświetlą się wpisy z tego dnia. Jak mam zrobić aby wyświetlały się dni? Teraz mam to:
Ale to wyświetla do każdej wiadomosci datę: 1: 28-12-2011 2: 28-12-2011 3: 28-12-2011 4: 28-12-2011 5: 28-12-2011 6: 28-12-2011 7: 28-12-2011 8: 28-12-2011 9: 28-12-2011 10: 28-12-2011 11: 28-12-2011 a ja chce aby tylko raz pokazało: 28-12-2011 a potem 29-12-2011 30-12-2011 itd Jak to zrobić? I na koniec jak wyswietlicz wiadomości np. z dnia 29-12-2011? Ten post edytował Saki 1.01.2012, 02:59:03 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 161 Pomógł: 9 Dołączył: 14.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Co do pierwszego to spróbuj tak:
Drugie pytanie Wystarczy użyć where i czasu
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 240 Pomógł: 2 Dołączył: 5.12.2010 Skąd: Fulda Ostrzeżenie: (0%) ![]() ![]() |
Co do pierwszego to spróbuj tak:
zapytanie SQL:
MySQL zwrócił komunikat: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY sysGodzina LIMIT 0, 30' at line 3 ###################################################################### Problem rozwiązany:
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 307 Pomógł: 37 Dołączył: 9.11.2010 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Musisz tylko pamiętać że w zdecydowanej większości przypadków silnik BD jest tak zoptymalizowany że wykona powierzone zadania szybciej niż tą samą funkcjonalności realizuje się poprzez silnik PHP. Nie mam pojęcia jak to wygląda przy tak banalnych zapytaniach ale przy jakichkolwiek większych query do bazy zdecydowanie lepiej wykonywać wszelkie wyszukiwania, porównania i sortowania właśnie tam. Może piszę ciut na wyrost ale ostatnio coraz częściej spotykam ludzi którzy naczytali sie jakichś głupot w sieci i teraz np. stronią od 'SORT BY RAND();' zamiast tego wyciągając wszystkie wpisy do PHP i tam losując 5 potrzebnych (nie rzadko z kilku tysięcy dostępnych). Pozdrawiam i przepraszam za (być może) mały offtopic.
Ten post edytował Uriziel01 2.01.2012, 13:10:48 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat spotykam ludzi, którzy naczytali się jakichś głupot w sieci i teraz np. stronią od 'SORT BY RAND();' Ok - może dla małych tabelek to jest spoko ale faktycznie dla sporych objętościowo tabel używanie ORDER BY RAND() w jakichś częstych zapytaniach potrafi powalić wydajność na kolana (IMG:style_emoticons/default/smile.gif) Chyba, że masz jakiś na to super sposób (IMG:style_emoticons/default/tongue.gif) Ogólnie wystarczy się przyjrzeć zapytaniu dając EXPLAIN i zobaczyć, że ta operacja obejmuje wszyściutkie wiersze i jeszcze je sortuje... To nie może być wydajne - chociaż pobieranie wszystkiego i losowanie też mija się z celem (IMG:style_emoticons/default/wink.gif) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 307 Pomógł: 37 Dołączył: 9.11.2010 Skąd: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
Nie zupełnie chcem tutaj nadal kontynuować ten offtop ale OK (IMG:style_emoticons/default/wink.gif)
Oczywiście że 'ORDER BY RAND()' jest nie wydajne dla dużych baz ze względu na tymczasowe tablice które tworzy. Ale można to bez problemu zastąpić na sto różnych sposobów [zakładając spójność indeksów tablicy nawet przez IN (X,Y,Z)]. Ale nie to miałem na myśli pisząc tamten post, chodziło mi o przerzucanie ciężaru obsługi danych na PHP co jest znacznym ciosem w wydajność. Wystarczy wpisać w 'popularną wyszukiwarkę' frazę 'ORDER BY RAND' aby przekonać się ilu ludzi trapi tak pozornie banalny problem. P.S-Albo użyć genialnego rozwiązania którym jest Sphinx, którego ze swojej strony gorąco polecam. Nie istnieje moim zdaniem lepszy silnik wyszukiwania pod SQL'a. Wydajność powala dosłownie na kolana. Ten post edytował Uriziel01 2.01.2012, 13:30:49 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
No i ok tu się z Tobą zgadzam w 100% (IMG:style_emoticons/default/smile.gif) A co do Sphinx'a to stara dobra Lucynka też jeszcze sobie radzi (IMG:style_emoticons/default/wink.gif)
ok kończymy off-topic (IMG:style_emoticons/default/wink.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 18:40 |