Autor Zpráva
sajgon
Profil *
Zdravíčko,
existuje nějaký jednoduchý dotaz, který by mi zobrazil všechny výsledky kromě prvního?
Zkoušel jsem to řešit limitem, nicméně jsem musel zadat rozsah, a to mi po čase přestalo vyhovovat:
(SELECT * from tabulka LIMIT 1, 100)

Zkrátka něco, co by mi nahradilo
100
v limitu za ležatou osmičku, čili nekonečno ;-)

Díkes
Alphard
Profil
sajgon:
Jestli nestačí 100, dejte tam 1000000. Pokud vím, MySQL neumožňuje nastavit offset bez limitu. Řešit to podmínkou by bylo asi zbytečné zpomalení.
Na straně PHP lze přeskočit první záznam, ale za cenu podmínky nebo prázdného volaní mysql_fetch_assoc() ) (nebo alternativy), to také pěkné nebude.
candiess
Profil
Mezi neefektivní a neelegantně hnusné řešení patří..
<?php
$query = mysql_query(" SELECT * FROM tabulka ");
$num_rows = mysql_num_rows($query); //spočítání řádků v tabulce

$query2 = mysql_query(" SELECT * FROM tabulka LIMIT 1,$num_rows ");
//další práce s $query2
?>
AM_
Profil
candiess:
navíc nefunkční, musel bys na to tu tabulku zamknout nebo z toho udělat transakci.

Zadat dostatečně velké číslo je spolehlivější řešení, určitě není chybou 18446744073709551615 (maximum of unsigned BIGINT).
Sajgon
Profil *
Děkuji za reakce, nejjednodušší je tedy použít
LIMIT 1, 1000000

;-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: