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

Websites optimieren für Google & Co.

Websites optimieren für Google & Co. 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)

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 29.08.2007, 00:07:18
Zwergal Zwergal ist offline
Anfänger
 
Registriert seit: Aug 2007
Beiträge: 4
MySQL auslesen von nicht vorhandenen Datensätzen

Hallo,

ja ich weis der Titel klingt komisch, aber ich will mal mein Problem erklären.
Es geht um ein Fußbaltippsystem

ich habe 2 Tabellen:

"users" und "tipps"

in "users" stehen alle Benutzer drin mit ihren Daten (ID,emai,name etc.)

in "tipps" stehen die daten ihrer tipps drinnen, aber nur wenn sie auch getippt haben.

Beispiel:

die user mit den IDs 1 und 3 tippen für spieltag 1, nun wird in der Tabelle tipps ein eintrag für jeden eingefügt mit:


Code:
ID | spieltag | tipps
----------------------
1  |    1     |  .....
----------------------
3  |    1     |  .....

nehmen wir nun an der Benutzer mit der ID 2 vergisst am 1. spieltag zu tippen, deswegen wird für ihn kein eintrag in der Tabelle tipps gemacht.

nun möchte ich alle user auslesen, die an spieltag 1 nicht getippt haben!
also sozusagen alle Benutzer die in der Tabelle "users" drinstehen, die aber keinen tipp für spieltag 1 abgegeben haben, also keinen eintrag in der tabelle "tipps" für spieltag 1 von ihnen vorhanden ist!

ich hoffe ich habe aus einigermaßen verständlich erklärt!

hab schon längere Zeit mit joins rumgetüftelt aber komme zu keinem ergebnis! bitte um hilfe!

Gruß

Zwergal
Mit Zitat antworten
  #2  
Alt 29.08.2007, 02:30:54
MatMel MatMel ist offline
Member
 
Registriert seit: Aug 2005
Beiträge: 644
MatMel eine Nachricht über ICQ schicken
AW: MySQL auslesen von nicht vorhandenen Datensätzen

Wenn bei einem JOIN die Bedingung nirgendwo drauf zutrifft steht in der Zelle üblich NULL.
Ich denke dass kann man auch abprüfen:
Code:
SELECT * FROM users u LEFT JOIN tipps t ON u.id =  t.user_id WHERE t.id = NULL
Sollte dass nicht klappen, kann man es auch alternativ mit einem Subquery lösen:
Code:
SELECT id, (SELECT COUNT(id) FROM tipps t WHERE t.user_id = u.id) anz FROM users u WHERE anz = 0
Mit Zitat antworten
  #3  
Alt 29.08.2007, 15:49:18
Zwergal Zwergal ist offline
Anfänger
 
Registriert seit: Aug 2007
Beiträge: 4
AW: MySQL auslesen von nicht vorhandenen Datensätzen

Hallo,

danke für die Antwort aber:

Die erste Abfrage geht nicht, da er keine NULL Werte findet da der Spieler der an spieltag 1 net getippt hat für spieltag 2 getippt hat und somit die Id ja einmal vorhanden ist, aber für einen anderen spieltag. ID und spieltag bilden in der Tabelle tipps den Primärschlüssel. Ein Beispiel für die Tabelle tipps:

Code:
ID | spieltag | tipps
----------------------
1  |    1     |  .....
----------------------
3  |    1     |  .....
----------------------
1  |    2     |  .....
----------------------
2  |    2     |  .....
----------------------
3  |    2     |  .....
ich möchte nun auslesen, dass der Spieler mit der ID 2 am 1. spieltag net getippt hat! der eintrag fehlt ja!

bei der unterabfrage bei der 2. abfrage zählt er ja alle die getippt haben! so versteh ich des jedefalls. da kommt nie 0 raus...
Mit Zitat antworten
  #4  
Alt 29.08.2007, 16:05:55
Zwergal Zwergal ist offline
Anfänger
 
Registriert seit: Aug 2007
Beiträge: 4
AW: MySQL auslesen von nicht vorhandenen Datensätzen

ok hab nun die Lösung, is ja eigentlich klar! ka warums so lang gedauert hat ^^

Code:
SELECT * FROM users u LEFT JOIN tipps t ON u.ID=t.Id AND t.spieltag=1 WHERE t.id IS NULL
so gehts nun!

Danke für die Hilfe
Mit Zitat antworten
  #5  
Alt 30.08.2007, 01:20:43
MatMel MatMel ist offline
Member
 
Registriert seit: Aug 2005
Beiträge: 644
MatMel eine Nachricht über ICQ schicken
AW: MySQL auslesen von nicht vorhandenen Datensätzen

Ahh tut mir Leid ich hatte nicht bedacht, dass es auch mehrere Spieltage geben kann...
Mit Zitat antworten
  #6  
Alt 30.08.2007, 14:30:53
Zwergal Zwergal ist offline
Anfänger
 
Registriert seit: Aug 2007
Beiträge: 4
AW: MySQL auslesen von nicht vorhandenen Datensätzen

Kein Problem, aber dein Vorschlag hat mich ja zur Lösung gebracht, was will man mehr! Danke nochmal!
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
ID oder Link Verknüpfung auslesen aus MySQL in einer Details.php PHPDummy PHP Grundlagen 2 14.06.2007 15:59:30
Auslesen und beschreiben einer MySQL Datenbank linux23 MySQLi/PDO/(MySQL) 8 10.12.2006 16:13:22
MySQL in Word auslesen Marth MySQLi/PDO/(MySQL) 2 16.01.2006 18:43:59
Seitenanzeige mit Umblättern bei Datensätzen aus einer MySQL Datenbank tyrra MySQLi/PDO/(MySQL) 22 15.08.2005 22:36:41
datei auslesen und in mysql speichern kacel PHP für Fortgeschrittene und Experten 7 31.01.2005 10:57:49


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:06:32 Uhr.


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


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