![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 15.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam poszukuje skryptu na zliczanie rekordów z bazy danych jeżeli by ktoś miał taki to bardzo bym prosił. Z góry dziękuję za pomoc+
|
|
|
![]()
Post
#2
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
do zliczania wykorzystujesz jedną funkcję COUNT. i tyle.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 382 Pomógł: 22 Dołączył: 21.05.2007 Skąd: Elbląg Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Mozna też użyć f-cji SQL_CALC_FOUND_ROWS , a potem SELECT FOUND_ROWS()
|
|
|
![]()
Post
#5
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
Mozna też użyć f-cji SQL_CALC_FOUND_ROWS , a potem SELECT FOUND_ROWS() które zrobią dokładnie to samo co COUNT (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) , nie ma różnicy kiedyś testowałem i niczym się nie różniło. |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
a na ilu rekordach testowales? 100? no to nie ma roznicy. przetestuj na kilku milionach (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
kolejna roznica to taka, ze przy count() znasz liczbe rekordow wtedy kiedy chcesz , a przy drugiej metodzie dopiero po pobraniu czesci danych. |
|
|
![]()
Post
#7
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Cytat które zrobią dokładnie to samo co COUNT , nie ma różnicy kiedyś testowałem i niczym się nie różniło. To zależy. Bo np. przy paginacji przydaje się znać, ile rekordów zawierających jakiś warunek spełnia go spośród WSZYSTKICH zawartych w tabeli rekordów (spróbuj to zrobić używając COUNT() ) |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat spróbuj to zrobić używając COUNT() aleś to teraz grypsa walnal.... (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
|
|
|
![]()
Post
#9
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Cytat aleś to teraz grypsa walnal.... Tzn? |
|
|
![]()
Post
#10
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
To zależy. Bo np. przy paginacji przydaje się znać, ile rekordów zawierających jakiś warunek spełnia go spośród WSZYSTKICH zawartych w tabeli rekordów (spróbuj to zrobić używając COUNT() ) przecież te funkcje działają prawie tak samo. różnią się tym co napisał ~nospor pare postów wyżej. Ten post edytował piotrooo89 21.04.2009, 20:25:43 |
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
|
|
|
![]()
Post
#12
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Cytat i juz masz ile rekordow spelnia jakis twoj warunek @nospor - tak, ale z ILU łącznie ? Hę ? Przykład: masz 100 rekordów, z czego warunek _WAR_ spełnia 10 Wybierasz je zapytaniem: SELECT COUNT(*) FROM tabela WHERE _WAR_; W wyniku dostajesz 10. A teraz: Wyświetl mi z użyciem tylko COUNT() tekst: "Znaleziono 10 wyników spełniających _WAR_ spośród wszystkich 100 istniejących w bazie." - nie wiedząc, że tych wszystkich jest 100. |
|
|
![]()
Post
#13
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
(IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) |
|
|
![]()
Post
#14
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
O rzesz Ty orzeszku.... (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Cwane. Dobra, da się. Oddalam wniosek z SQL_CALC_FOUND_ROWS. |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
[offftopic]
z tym SQL_CALC_FOUND_ROWS, to ten plus jest że tak naprawde ma się jedno zapytanie dla mnie to jest wygodniejsze i sądze że dla SQL'a łatwiej zrobić takie coś :
niż :
Ale było to chyba omawiane już w innym topicu, moim zdaniem jest to wygodniejsza metoda i nawet z logicznego punktu widzenia szybsza. (testowałem to na bodajże 100k rekordów w nocy na serverze dość sporego portalu i nie byłó różnicy czy dodam SQL_CALC_FOUND_ROWS czy nie, a po co wykonywać dwa tak skomplikowane zapytania? - jeżeli się myle prosze mnie poprawić :] ) [/offtopic] Ten post edytował melkorm 21.04.2009, 21:52:51 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 15:05 |