Liczba elementów z tablicy - proste


Oglądasz archiwalną wersję tematu "Liczba elementów z tablicy - proste" z forum pl.comp.www.server-side


meetom - 8 Lip 2001, 12:56

Mam sobie tablice, w ktorej pierwsze pole to nazwa kategorii. Wiem juz jak
zrobic liste kategorii, ale chcialbym tez wiedziec jak policzyc ile
wystepuje elementow w danej kategorii, tzn ile razy wystepuje element,
ktorego pierwsze pole jest okreslone. Troche namotalem... Przyklad:

Rekord1: warzywa; marchewka; pomaranczowa;
Rekord2: warzywa; rzodkiewka; rozowa;
Rekord3: owoce; banan; zolty;
Rekord4: owoce; jablko; zielone;
Rekord5: owoce; wisnia; bordowa;

Sorki - znow porobany przyklad, ale przynajmniej wiadomo o co chodzi. A
chodzi o to ze chce wiedziec ile mam warzyw (a mam 2) i ile owocow (a jest
ich 3).
Pozdroofka,
Meetom.



MLS - 8 Lip 2001, 13:53

Rekord1: warzywa; marchewka; pomaranczowa;
Rekord2: warzywa; rzodkiewka; rozowa;
Rekord3: owoce; banan; zolty;
Rekord4: owoce; jablko; zielone;
Rekord5: owoce; wisnia; bordowa;

Sorki - znow porobany przyklad, ale przynajmniej wiadomo o co chodzi. A
chodzi o to ze chce wiedziec ile mam warzyw (a mam 2) i ile owocow (a jest
ich 3).



Ja bym to zrobil tak:
(przypuszczam, ze baza jest utworzona w postaci trzech kolumn a nie
jednej zawierajacej te wszystkie informacje. Jesli sa to trzy kolumny,
to nazwijmy je np. 'klasa', 'nazwa' i 'kolor')

$query="SELECT * FROM tabela WHERE Klasa='warzywa'";
$result=mysql_query($query);
$ile_warzyw=mysql_num_rows($result);
$query="SELECT * FROM tabela WHERE Klasa='owoce'";
$result=mysql_query($query);
$ile_owocow=mysql_num_rows($result);

i teraz w zmiennych $ile_warzyw i $ile_owocow masz odpowiednie
wartosci.

Pozdr, MLS


Metempsychoza - 8 Lip 2001, 14:00

Mam sobie tablice, w ktorej pierwsze pole to nazwa kategorii. Wiem juz jak
zrobic liste kategorii, ale chcialbym tez wiedziec jak policzyc ile
wystepuje elementow w danej kategorii, tzn ile razy wystepuje element,
ktorego pierwsze pole jest okreslone. Troche namotalem... Przyklad:

Rekord1: warzywa; marchewka; pomaranczowa;
Rekord2: warzywa; rzodkiewka; rozowa;
Rekord3: owoce; banan; zolty;
Rekord4: owoce; jablko; zielone;
Rekord5: owoce; wisnia; bordowa;



SELECT COUNT(*) FROM tabela WHERE nazwa_kategorii='warzywa'


MLS - 8 Lip 2001, 14:08

$query="SELECT * FROM tabela WHERE Klasa='warzywa'";



Gdzie "tabela" to oczywiscie nazwa Twojej tabeli z tym zarciem ;)


Meetom - 8 Lip 2001, 14:28

SELECT COUNT(*) FROM tabela WHERE nazwa_kategorii='warzywa'



I co mam potem z tym zrobic? Jak sie zachowuje takie "SELECT COUNT" ?


Metempsychoza - 8 Lip 2001, 18:44

| SELECT COUNT(*) FROM tabela WHERE nazwa_kategorii='warzywa'

I co mam potem z tym zrobic? Jak sie zachowuje takie "SELECT COUNT" ?



COUNT zlicza ilosc rekordow w tabeli okreslonych warunkiem za pomoca
klauzuli WHERE
przykład co z tym mozna zrobic:

<?php
mysql_connect ($host, $user, $password);
$result = mysql_db_query ("SELECT COUNT(*) FROM tabela WHERE
nazwa_kategorii='warzywa'");
$row = mysql_fetch_array ($result);
echo $row[0]; /* tutaj bedziesz miał liczbe warzyw */
mysql_free_result ($result);
?


Meetom - 9 Lip 2001, 02:25

Wszystko dziala. Dzieki.

| $query="SELECT * FROM tabela WHERE Klasa='warzywa'";
Gdzie "tabela" to oczywiscie nazwa Twojej tabeli z tym zarciem ;)

--
MLS http://wap.bergerac.home.pl/mls




FOX - 9 Lip 2001, 17:01

A ja bym zrobił tak

$query="SELECT Klasa,COUNT(*) as ILOSC FROM tabela GROUP BY Klasa";

wynikiem jest tabela

KLASA,   ILOSC
--------------
warzywa  2
owoce    3

jest to najefektywniejsza matoda dla dużej liczby rekordów

_____________________________________________________

Aplikacje internetowe - FOX Development Group - Tychy


albo atrybut albo element, jak?
Gdzie oglaszac bardzo proste strony WWW (na p.c.w.nowe-strony ich nie chca)?
bardzo proste pytanie - wszystkie wezly oprocz 'zly'
wewnatrz elementu <opis> moga wystapic <br/> - XSLT
Rue Saint- Michel (Avenue Carnivore element 2)
Parsowanie elementu o konkretnej wartości atrybutu... :/
Tupęd
  • biaB3y ciB1gnB1cy siEA B6luz dni pB3odne
  • you can dance po prostu tancz 16
  • techniczny problem z ladowaniem sie gry jej 45
  • leech ftp
  • skazaniec felon 2008 dvdrip xvid lektor pl
  • urzad pracy w kutnie
  • diablo;2;do;pobrania;pelna;wersja
  • czerwone plamy na policzkach
  • na wsi czy we wsi
  • Kolekcja tematów z for dyskusyjnych ; Start