![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 9.10.2003 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Pytanie - pewnie trywialne, ale nie mogę odpowiedzi znaleźć na forum!
Mianowicie, potrzebuję wyciągnąć z bazy danych (konkretnie z kilku tabel) ilość wszystkich rekordów! Jak to zrobić? Prosżę o pomoc? -------------------- Początki zawsze sa trudne...
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Mianowicie, potrzebuję wyciągnąć z bazy danych (konkretnie z kilku tabel) ilość wszystkich rekordów! Jak to zrobić? Prosżę o pomoc?
Po pierwsze to nie to forum. Problemy bazodanowe proszę umieszczać na forum Bazy danych. Przenoszę wątek. Co do meritum: [sql:1:6273c73fb4]select count(*) from ...[/sql:1:6273c73fb4] W miejsce ... wstaw sobie odpowiednie tabele. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 1.11.2003 Skąd: Long Island, NY USA Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czy adwol zrozumial dobrze pytanie czy moze ja sie myle ale odpowied jest
[php:1:1a343df2e1]<?php /* polacz sie do db */ mysql_connect ('localhost','user','pass'); mysql_select_db ('test'); /* zbuduj i wyslij query */ $query = "SELECT * FROM sometable ORDER BY $order"; $result = mysql_query ($query); /* sprawdz czy cos wrocilo */ $numrows = mysql_num_rows($result); if ($numrows == 0) { echo "Nie ma danych w bazie!"; exit; } ?>[/php:1:1a343df2e1] numer ile elementow jest w db jest w $numrows to mozesz powtorzyc na kazda tabele ktora cie interesuje -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
POLVIP: masz warning za nabijhanie postów.
Nie wiesz o czym piszesz, nie znasz poleceń MySQL. Po chere wybierac wszystko z bazy (miliony moze rekordow) skoro MySQL potrafi policzyc to sam? -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 80 Pomógł: 0 Dołączył: 1.11.2003 Skąd: Long Island, NY USA Ostrzeżenie: (0%) ![]() ![]() |
sadzisz ze to jest gorsza odpowiedz od adwol?
nabijanie postow? moze wykasujesz mi do 0 - nie o to mi chodzi.... -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat sadzisz ze to jest gorsza odpowiedz od adwol?
Myślę, że tak, ponieważ: :arrow: musisz wyciągnąć te wszystkie wiersze, żeby je policzyć, a pobranie count(*) nie dotyka nawet danych w tabeli :arrow: nie wiadomo po co te dane sortujesz (pomijając to, że nie wiadomo po czym) Powoduje to, że Twoja metoda jest bardziej czasochłona i daje niepotrzebną pracę DBMSowi. Poza tym, autor wątku nigdzie nie zaznaczył, że chodzi mu o MySQLa więc Twoje rozwiązanie może okazać się zupełnie błędne. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat sadzisz ze to jest gorsza odpowiedz od adwol?
po prostu zostałeś powiadomiony, że jest lepszy sposób, to nie miało żadnych podtekstów - nie najeżdżaj na nas.
nabijanie postow? moze wykasujesz mi do 0 - nie o to mi chodzi.... a count() jest naprawdę lepsze |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 602 Pomógł: 0 Dołączył: -- Skąd: W - WA -> GRO Ostrzeżenie: (0%) ![]() ![]() |
[sql:1:4d633636f1]SELECT count(tabela1.id) as tabela_1, count(tabela2.id) as tabela_2, ...
FROM tabela1, tabela2;[/sql:1:4d633636f1] -------------------- Zanim zadasz pytanie, zawsze wczesniej zajrzyj do manuala ( pl.php.net/manual/pl/ ).
Szukasz skryptow - www.hotscripts.com |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat [sql:1:f6fabd4176]SELECT count(tabela1.id) as tabela_1, count(tabela2.id) as tabela_2, ...
FROM tabela1, tabela2;[/sql:1:f6fabd4176] Chyba nie o to chodziło, bo każdy z tych count(...) zwróci Ci iloczyn ilości wierszy w obu tabelach (złączenie kartezjańskie). |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 31.10.2003 Ostrzeżenie: (0%) ![]() ![]() |
hmm
Po połączeniu się w php z bazą zadałem: [php:1:4df3c42184] $query = "SELECT count(*) FROM lista"; $ile = mysql_query("$query"); echo("Mamy ".$ile." fanów"); [/php:1:4df3c42184] Wg. mnie wszystko jest dobrze, lecz zamiast echa Kod Mamy 2 fanów - bo tyle jest w bazie, otrzymuję:
Kod Mamy Resource id #5 fanów
Co może byc nie tak? [edit] Dodam tylko, że [sql:1:4df3c42184]SELECT count( * ) FROM lista [/sql:1:4df3c42184] wykonane w phpmyadminie zwraca wartość 2.... [/edit]pozdro |
|
|
![]()
Post
#11
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
[php:1:fadd480be0]<?php
list( $ile ) = @mysql_fetch_row( @mysql_query( 'SELECT count(*) FROM lista' ) ); echo( 'Mamy ' . $ile . ' fanów' ); ?>[/php:1:fadd480be0] I będzie cacy ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 09:55 |