SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 11.01.2010, 10:56:58
Haselutz Haselutz ist offline
Anfänger
 
Registriert seit: Jan 2010
Alter: 51
Beiträge: 2
3 mal in Count in eines zusammenfassen.

Hallo erstmal an die Community.

Ich progge auch mal wieder vor mich hin. Leider hat sich einiges seit meinem letzten Wissensstand getan. Ich hoffe ihr könnt mir weiterhelfen.

Ich habe folgende Zählung bei mir eingebaut.
Ich denke das dürfte doch schlanker gehen.
Hat mir hier jemand einen Vorschlag.

Code:
if ($user->prem == 1) {
				//Zähle Geschlecht
	$query = 'SELECT COUNT(*) FROM jos_gomelins1 WHERE geschlecht = 0 AND urname = "' . $gomelin->urname . '"';
	$result = mysql_query ($query);
	$found = mysql_fetch_row ($result);
	$nong = $found[0];
	$query = 'SELECT COUNT(*) FROM jos_gomelins1 WHERE geschlecht = 1 AND urname = "' . $gomelin->urname . '"';
	$result = mysql_query ($query);
	$found = mysql_fetch_row ($result);
	$nonm = $found[0];
	$query = 'SELECT COUNT(*) FROM jos_gomelins1 WHERE geschlecht = 2 AND urname = "' . $gomelin->urname . '"';
	$result = mysql_query ($query);
	$found = mysql_fetch_row ($result);
	$nonf = $found[0];
	$artgesamt = $nong + $nonf + $nonm;
	$maintpl .="<small>Von dieser Smilieart sind insgesamt " . $artgesamt . " vorhanden. Davon sind " . $nong . " noch ohne Geschlecht. " . $nonf . " sind weiblich und " . $nonm . " sind m&auml;nnlich</small>";
	}
__________________
Signatur:
Sorry mein PHP ist etwas eingestaubt. Ich hoffe Ihr helft mir auf den neusten Stand.
Mit Zitat antworten
  #2  
Alt 11.01.2010, 11:45:20
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
AW: 3 mal in Count in eines zusammenfassen.

so vielleicht:

$query = 'SELECT geschlecht, COUNT(*) as anzahl FROM jos_gomelins1 WHERE urname = "' . $gomelin->urname . '" group by geschlecht';

wobei man count(*) vermeiden sollte.
Mit Zitat antworten
  #3  
Alt 11.01.2010, 12:06:49
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 15
Beiträge: 2.269
AW: 3 mal in Count in eines zusammenfassen.

Zitat:
Zitat von feuervogel Beitrag anzeigen
wobei man count(*) vermeiden sollte.
Warum?
Das wird doch in MySQL einer extra Optimierung unterzogen.
Darum gibt das Handbuch auch eine positive Empfehlung.
Einzig die NULL Behandlung kann Verwirrung stiften.
Mit Zitat antworten
  #4  
Alt 11.01.2010, 13:23:29
Benutzerbild von Indyk
Indyk Indyk ist offline
Member
 
Registriert seit: Aug 2006
Ort: Lübeck
Alter: 38
Beiträge: 900
Indyk eine Nachricht über ICQ schicken
AW: 3 mal in Count in eines zusammenfassen.

Zitat:
Zitat von DokuLeseHemmung Beitrag anzeigen
Warum?
Das wird doch in MySQL einer extra Optimierung unterzogen.
Um das nochmal genauer auszuführen für Interessierte: Understand your engines (Punkt 8)
Mit Zitat antworten
  #5  
Alt 11.01.2010, 15:20:30
Haselutz Haselutz ist offline
Anfänger
 
Registriert seit: Jan 2010
Alter: 51
Beiträge: 2
AW: 3 mal in Count in eines zusammenfassen.

Danke jetzt habe ich es.
Ich schreibe mein Ergebniss falls jemand anderst auch mal das Problem hat. Für weitere Optimierung bin ich dankbar.

Ich habe mich einfach noch nicht in die neueren Datenbankabfragen eingearbeitet, und so ging es schneller.

Das Ergebniss
In der Datenbank geschlecht gibt es nur 0, 1 oder 2
Code:
if ($user->prem == 1) { //Zähle Geschlecht mit Anzeige wenn ein Premiumuser
		$query = 'SELECT geschlecht, COUNT(*) as anzahl FROM jos_gomelins1 WHERE urname = "' . $gomelin->urname . '" group by geschlecht';
		$database->setQuery( $query );
		$votes = $database->loadObjectList();
		$artgesamt = $votes[0]->anzahl + $votes[1]->anzahl + $votes[2]->anzahl;
		$maintpl .="<small>Von dieser Smilieart sind insgesamt " . $artgesamt . " vorhanden. Davon sind " . $votes[0]->anzahl . " noch ohne Geschlecht. " . $votes[1]->anzahl . " sind weiblich und " . $votes[2]->anzahl . " sind m&auml;nnlich</small>";
		}
__________________
Signatur:
Sorry mein PHP ist etwas eingestaubt. Ich hoffe Ihr helft mir auf den neusten Stand.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mit Count() nur bestimmte einträge finden visual_75 MySQLi/PDO/(MySQL) 1 08.07.2008 19:00:59
Problem mit SQL COUNT latina1984 PHP Grundlagen 0 03.10.2007 20:59:14
mit COUNT aus 2 oder mehr Tabellen zählen schlodd MySQLi/PDO/(MySQL) 2 14.01.2005 13:45:10
count aus einer anderern Tabelle Janson MySQLi/PDO/(MySQL) 12 29.08.2004 17:25:11
count funktion bei einem 2D Array Skar PHP Grundlagen 7 13.08.2004 14:46:59


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:01:10 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt