Autor | Zpráva | ||
---|---|---|---|
grimword Profil |
#1 · Zasláno: 13. 9. 2008, 17:03:25 · Upravil/a: grimword
jak co nejrychleji ziskat pocet zaznamu z MYSQL (tabulky)? prvni napad je to projet nejakym WHILEm, druhy vytahnout si posledni zaznam a precist si sloupec ID (je nastaven na auto_increment), v PHPmyAdminovi jsem videl v zalozce Upravy, ze muzu zmenit hodnotu auto_increment (vzdycky se nastavi na dalsi hodnotu - mam-li posledni zaznam ID = 20, nastavi se na 21) - neslo by ji nejak vytahnout? nebo nejaky jiny efektvni zpusob? jde mi o rychlost a jednoduchost
|
||
8383-9021 Profil * |
#2 · Zasláno: 13. 9. 2008, 17:08:07
Neviem či som to správne pochopil..
<?php /*tu musi byt spojenie do mysql*/ $query = mysql_query("SELECT * FROM `tabulka`"); $zobraz = mysql_fetch_array($query); $id = $zobraz['id']; ?> Počet údajov v mysql: <?php echo $id ?> To by malo zobraziť posledné IDčko číže počet údajov ak chápeš.. |
||
grimword Profil |
#3 · Zasláno: 13. 9. 2008, 17:16:11
jop, to vypada ok a fungue, diky ti :)
|
||
8383-9021 Profil * |
#4 · Zasláno: 13. 9. 2008, 17:20:33
NZ
|
||
BetaCam Profil |
#5 · Zasláno: 13. 9. 2008, 19:28:38
8383-9021
„Neviem či som to správne pochopil.. <?php /*tu musi byt spojenie do mysql*/ $query = mysql_query("SELECT * FROM `tabulka`"); $zobraz = mysql_fetch_array($query); $id = $zobraz['id']; ?> Počet údajov v mysql: <?php echo $id ?> To by malo zobraziť posledné IDčko číže počet údajov ak chápeš..“ grimword „jop, to vypada ok a fungue, diky ti :)“ No tak nevim sem asi nechápavec, ale proste nejde mi do hlavy jak ti tohle může fungovat tak jak má. 1) Kód uvedený nahoře musí logicky zobrazit první ID které je v tabulce navíc uplně zbytečně tahá celou tabulku. Když už to chci dělat takhle blbe tak si tam zaprvé dám aspon LIMIT a zadruhé změnim řazení aby se mi vracelo opravdu poslední ID. Tedy dotaz typu : SELECT id FROM `tabulka` ORDER BY id DESC LIMIT 1 2) Tato konstrukce nevrací skutečný počet záznamů v tabulce, ale pouze nejvyší ID v tabulce a to tedy opravdu není to samé. Pokud chceš spočítat skutečný počet záznamů měl by si to dělat třeba tahle : SELECT count(id) FROM tabulka Opravdu nechápu jak ti výše uvedený kód od 8383-9021 může fungovat tak jak má. :) |
||
Medvídek Profil |
#6 · Zasláno: 13. 9. 2008, 19:50:08 · Upravil/a: Medvídek
8383-9021
a co kdyz nejaky zaznam vymazes :) co mysql_num_row() |
||
grimword Profil |
#7 · Zasláno: 13. 9. 2008, 19:58:27
include "****.php";
$query = mysql_query("SELECT * FROM `data` ORDER by id DESC"); $zobraz = mysql_fetch_array($query); $a = $zobraz['id']; |
||
grimword Profil |
#8 · Zasláno: 13. 9. 2008, 19:58:58
zaznamy nebudou mazany
|
||
Medvídek Profil |
#9 · Zasláno: 13. 9. 2008, 20:00:55
include "****.php"; $query = mysql_query("SELECT id FROM `data` ORDER by id DESC LIMIT1"); $zobraz = mysql_fetch_array($query); $a = $zobraz['id']; |
||
BetaCam Profil |
#10 · Zasláno: 13. 9. 2008, 20:13:35 · Upravil/a: BetaCam
Medvídek
„co mysql_num_row()“ se hodí pouze pokud s vrácenými daty hodláš pracovat tedy například : $query = mysql_query("SELECT id FROM `tabulka` ORDER BY id "); $pocet = mysql_num_rows($query); while($row = mysql_fetch_array($query)){ echo $row['id'].'<br />'; } echo 'Počet vrácených řádků je: '.$pocet; jinak je to opět zbytečné plýtvání. grimword „zaznamy nebudou mazany“ V tom případě se ale musíš rozhodnout co chceš. Jestli největší ID v tabulce a nebo počet záznamů v tabulce. Vždy by si měl napsat aplikaci tak, aby v každém případě vracela to co má a né aplikaci která vrací to co má jen za určitého předpokladu. |
||
Nox Profil |
#11 · Zasláno: 13. 9. 2008, 20:59:34
„SELECT id FROM `data` ORDER by id DESC LIMIT1“
Podle mě špatně - co když někdo polovinu dat uprostřed smaže? Mysql_num_rows viz BetaCam Jinak select count(*) as pocet from Nebo pokud se také má dále pracovat $data=mysql_query("select SQL_CALC_FOUND_ROWS sloupce from tabulka atd."); $max=mysql_result(mysql_query("SELECT FOUND_ROWS()"),0); |
||
grimword Profil |
#12 · Zasláno: 13. 9. 2008, 21:24:20
dekuji vsem za krasne rozebrani
|
||
Časová prodleva: 1 rok
|
|||
dddd Profil * |
#13 · Zasláno: 30. 10. 2009, 15:17:07
Prosím pošlete komentáře jak vypadá web
Odkaz |
||
Slim12 Profil * |
#14 · Zasláno: 30. 10. 2009, 16:20:49
Prosím pošlete komentáře jak vypadá web Odkaz Tato diskuse neni proto aby ti posílaly hodnoceni tvých stránek s timhle jdí sem |
||
Časová prodleva: 13 let
|
0