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 ::

TYPO3 Kochbuch

TYPO3 Kochbuch 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 > MySQL/MySQLi

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

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 24.11.2006, 15:44:19
Buzweed Buzweed ist offline
Anfänger
 
Registriert seit: Nov 2006
Beiträge: 2
Zwei counts in einem Select

Hi,

ich hab hier ein Problem mit ner SQL Abfrage. Und zwar möchte ich folgendes counten:

Code:
//Hole mir Anzahl Fehltage zur Art_ID
	$query = "SELECT count(*) from eae_fehldata where sid='$sid' AND art_id='$art_id';";
  	$result=mysql_query("$query") or die (mysql_error());
  	
  	//Hole mir Anzahl "unentschuldigter" Fehltage zur Art_ID
  	$query = "SELECT count(*) from eae_fehldata where sid='$sid' AND art_id='$art_id' AND ent_id='U';";
  	$result2=mysql_query("$query") or die (mysql_error());
Ich will einmal alle Fehltage zählen die von einer bestimmten Art sind, und dann noch alle Fehltage die von einer bestimmten Art sind aber noch das Attribut "unentschuldigt" U gesetzt ist.

Problem ist, dass die tabelle eae_fehldata ziemlich groß ist und somit es ewig dauert bis beide Selects ausgeführt wurden.

Kann man das irgendwie auf ein Select reduzieren?

Danke schon mal für eure Hilfe.

Gruß,
Buz :)

Geändert von Buzweed (24.11.2006 um 15:45:11 Uhr)
Mit Zitat antworten
  #2  
Alt 24.11.2006, 15:49:36
BenniG. BenniG. ist offline
Member
 
Registriert seit: Oct 2006
Beiträge: 610
AW: Zwei counts in einem Select

Zitat:
Kann man das irgendwie auf ein Select reduzieren?
Ja (ungetestet, Fehlermeldungen bitte posten und versuchen leichte Fehler selbst zu beheben ;))
Code:
SELECT count(*) alle, count(case when ent_id='U' then 1 else null end) unentschuldigt  from eae_fehldata where sid='$sid' AND art_id='$art_id';
Was heißt groß? Mit indizes auf sid, art_id und ent_id sollte sich die Performance verbessern. Am besten einen Index auf sid,art_id und einen auf sid, art_id,ent_id (oder meine Abfrage benutzen und nur einen auf sid,art_id)

Geändert von BenniG. (24.11.2006 um 15:50:17 Uhr)
Mit Zitat antworten
  #3  
Alt 24.11.2006, 15:57:23
Buzweed Buzweed ist offline
Anfänger
 
Registriert seit: Nov 2006
Beiträge: 2
AW: Zwei counts in einem Select

Das geht ja auf anhieb.

Vielen vielen dank :)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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
Select mit Where-Clause aus Variable/Array RoSt MySQL/MySQLi 7 01.08.2006 13:44:02
UPDATE und SELECT MrLongbaugh MySQL/MySQLi 2 20.07.2006 13:27:50
Probleme mit PHP und mySQL, Select xy as yz funktioniert nicht KickMuck MySQL/MySQLi 1 04.03.2006 13:24:31
To Many Connections ProGamer11 PHP Grundlagen 0 19.06.2003 00:52:56
Ich willst jetzt wissen - Select * oder nicht Select * CyberAge PHP Grundlagen 22 13.08.2002 18:40:46


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:29:24 Uhr.


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


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