Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
29.04.2005, 01:01
Alcapone



Wie bekomme ich die Anzahl der datensätze aus einer Ergebnismenge herraus ?

Beispiel:

Im Profil wird die Anzahl der Posts des Users angezeigt. Also würde es heissen:

SELECT xyz, user_ID FROM posts WHERE user_ID = 12345

So jetzt möchte ich wissen wieviele Datensätze des users 12345 in der Tabelle posts vorhanden sind.

Wie lautet die Abfrage ?

--

"Everything, that can go wrong, will go wrong" Murphy's Law

zum Seitenanfang zum Seitenende Profil || Suche
001
29.04.2005, 01:13
Spin



SELECT count(*) FROM posts WHERE user_ID='12345';

--

( www.opera.com | www.miranda-im.org )
http://www.ironoak.de

zum Seitenanfang zum Seitenende Profil || Suche
002
29.04.2005, 08:36
K-Putt



Die Quotes (' ') bei user_ID=12345 müssen noch weggelassen werden, weil es - wie ich annehme - ein numerisches Feld ist.

--

Rambo Engineer @ Drippy's 2fort - finest TFC 1.5 || Bild Upload || The world's most advanced open source database

zum Seitenanfang zum Seitenende Profil || Suche
003
29.04.2005, 10:51
Spin



Nein, immer schön die Quotes reinhauen, ist sicherer.

--

( www.opera.com | www.miranda-im.org )
http://www.ironoak.de

zum Seitenanfang zum Seitenende Profil || Suche
004
29.04.2005, 13:35
Joker



Wenn du schon die Userdaten für das Profil holen musst kannst du beides auf einmal holen:

SELECT u.xyz, u.xzu, COUNT( p.user_id ) as posts
FROM user u, posts p
WHERE u.user_id = '12345'
AND p.user_id = '12345'
GROUP BY p.user_id

Bin nicht mehr sicher ob das der einfachste Weg ist. Der SQL Kurs ist eine Weile her.

--

-=[ Aigu.ch ]=-

zum Seitenanfang zum Seitenende Profil || Suche
005
29.04.2005, 13:38
K-Putt



Zitat:
Spin postete
Nein, immer schön die Quotes reinhauen, ist sicherer.
Die ID sollte, wenn sie übergeben wurde, sowieso vorher geprüft werden :)

--

Rambo Engineer @ Drippy's 2fort - finest TFC 1.5 || Bild Upload || The world's most advanced open source database

zum Seitenanfang zum Seitenende Profil || Suche
006
29.04.2005, 15:38
Alcapone



@ Joker so wie ich das sehe, wird COUNT( p.user_id ) als posts definiert. Wenn ich jetzt das auf ner Page ausgeben will sieht das dann in etwa so aus ?

PHP-Quellcode:<?php
echo $row['posts'];
?>
Danke für eure Hilfe

--

"Everything, that can go wrong, will go wrong" Murphy's Law


Dieser Beitrag wurde am 29.04.2005 um 15:42 von Alcapone bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
007
29.04.2005, 15:47
Joker



genau ... oder beim fetch object
$row->posts

--

-=[ Aigu.ch ]=-

zum Seitenanfang zum Seitenende Profil || Suche
008
30.04.2005, 15:43
Chronial



Joker, was soll das werden?

Zitat:
SELECT u.xyz, u.xzu, COUNT( p.user_id ) as posts
FROM user u, posts p
WHERE u.user_id = '12345'
AND p.user_id = '12345'
GROUP BY p.user_id
Das ist doch der totale Overkill. Du lässt den Server einen total schwachsinnigen JOIN machen, nur um dir 2 Zeilen code zu sparen?

--

"tsuji-giri" (japanisch) - ein neues Schwert an einem Passanten ausprobieren


Dieser Beitrag wurde am 30.04.2005 um 15:44 von Chronial bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
009
01.05.2005, 20:30
theDon



Fuer MySQL > 4:
Quellcode:SELECT foo, bar, (SELECT COUNT(userid) FROM posts WHERE userid = 1337) AS posts
FROM user
WHERE userid = 1337

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche