Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Jak pobrać najwyższą wartość z tabeli... albo. ?
LubieWino
post
Post #1





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 15.10.2006

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


Mam pytanko, mam tabele osób i każda z nich ma numer. Dochodzi kolejna osoba, więc numer się zwiększa - w ten sposób moge wiedzieć ile osób jest w tabeli.

I właśnie to chce się dowiedziec - ile osób jest w tabeli. Czyli albo wezme najwyższy numer z tej tabeli, albo zlicze wszystkie rekordy.

Jak to moge zrobić?
dzieki za odpowiedz
Go to the top of the page
+Quote Post
kszychu
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

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


Albo SELECT COUNT(*) jak chcesz zliczyć elementy albo SELECT MAX(numer) jeśli chcesz największy numer.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
LubieWino
post
Post #3





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 15.10.2006

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


ok dzieki, ale mam w sumie jeszcze konkretniejsze pytanko. Chcialbym wyselekcjonować 15 pierwszych rzędów z tabeli ale jednocześnie potrzebuje infromacji ile jest wszystkich rekordów w tej tabeli.. Czyli pisze mniej wiecej SELECT * FROM TABELA LIMIT 15...ale jak policzyc dodatkowo wszystkie rekordy?. Mozna to jakos zgrabnie zrobić w jednym SELECT? albo jakoś inaczej żebym nie musiał pisać specjalnie driugiego selecta dla policzenia rekordów?
Go to the top of the page
+Quote Post
kszychu
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

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


Jednym się nie da.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
sobstel
post
Post #5





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

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


Można wykrozystać do tego SQL_CALC_FOUND_ROWS, ale czytałem (sorry, nie mam teraz żadnego linka pod ręką do podparcia), że wcale nie jest szybsze od wykonywania 2 zapytań i tak to się właśnie zazwyczaj robi, t. najpierw LIMIT, a potem COUNT wszystkiego.


--------------------
"If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
że wcale nie jest szybsze od wykonywania 2 zapytań
Sek w tym ze to co podales to tez dwa zapytania. Drugie zapytania musi poleciec by dobrac sie do tego co zwrocil SQL_CALC_FOUND_ROWS smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
LubieWino
post
Post #7





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 15.10.2006

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


Kurde czemu to nie dziala?

  1. <?php
  2. $qqq = mysql_query("SELECT MAX(wiek) FROM osoba where plec = '$plec'");
  3.  
  4. while($row = mysql_fetch_array($qqq)){
  5. $idd = $row['wiek'];
  6. }
  7. echo $idd;
  8. ?>


Ten post edytował LubieWino 22.01.2008, 17:12:47
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




max(wiek) nie zwraca pola o nazwie wiek. Musisz zrobic alias
  1. SELECT MAX(wiek) wiek FROM ...


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 21:45