php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 22-03-2005, 22:16
jogisarge
 Registrierter Benutzer
Links : Onlinestatus : jogisarge ist offline
Registriert seit: Nov 2002
Beiträge: 430
jogisarge ist zur Zeit noch ein unbeschriebenes Blatt
Standard kleines Abfrageproblem

Hallo !


Ich habe eine Tabelle mit folgendem Aufbau :
id,sitzungsnummer,status

Beispieldatensätze :
1,137a04e745d4f91bca0057ab0dc32ab9,1
2,137a04e745d4f91bca0057ab0dc32ab9,2
3,137a04e745d4f91bca0057ab0dc32ab9,32
4,137a04e745d4f91bca0057ab0dc32ab9,4
5,137a04e745d4f91bca0057ab0dc32ab9,5
6,137a04e745d4f91bca0057ab0dc32ab9,10
7,227a04e566d4A22baa2257abdf999ab9,2
8,227a04e566d4A22baa2257abdf999ab9,3
9,227a04e566d4A22baa2257abdf999ab9,5
10,227a04e566d4A22baa2257abdf999ab9,4
11,227a04e566d4A22baa2257abdf999ab9,3
12,227a04e566d4A22baa2257abdf999ab9,10

d.h.
2 verschiedene Sitzungsnummern mit verschiedenen Inhalten im Feld status.

Ich brauche nun alle sitzungsnummern, die im Feld status keine 32 haben.
Die 32 kennzeichnet eine Abschluss.
Ich möchte mir also alle nicht abgeschlossenen Sitzungsnummern anzeigen.

Ich hoffe ihr könnt mein Problem nachvollziehen.

mfg
Jogi
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 22-03-2005, 22:53
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

kannst Du subselects benutzen?
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Mit Zitat antworten
  #3 (permalink)  
Alt 22-03-2005, 22:55
jogisarge
 Registrierter Benutzer
Links : Onlinestatus : jogisarge ist offline
Registriert seit: Nov 2002
Beiträge: 430
jogisarge ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das ganze mache ich mit php auf eine mysql-Datenbank
Mit Zitat antworten
  #4 (permalink)  
Alt 22-03-2005, 23:10
Arni
 PHP Junior
Links : Onlinestatus : Arni ist offline
Registriert seit: Mar 2001
Ort: Miami F.L
Beiträge: 691
Arni ist zur Zeit noch ein unbeschriebenes Blatt
Standard

na dann einfach die Abfrage mal mit != versuchen


also quasi
where status != 32

oder einfach mal ausprobieren
Mit Zitat antworten
  #5 (permalink)  
Alt 22-03-2005, 23:28
jogisarge
 Registrierter Benutzer
Links : Onlinestatus : jogisarge ist offline
Registriert seit: Nov 2002
Beiträge: 430
jogisarge ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Na,Ja ganz so einfach ist es dann doch nicht.
Mit Zitat antworten
  #6 (permalink)  
Alt 22-03-2005, 23:29
pekka
 PHP Master
Links : Onlinestatus : pekka ist offline
Registriert seit: Jun 2001
Ort: Köln
Beiträge: 6.608
pekka befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von jogisarge
Na,Ja ganz so einfach ist es dann doch nicht.
Warum?
Mit Zitat antworten
  #7 (permalink)  
Alt 22-03-2005, 23:38
jogisarge
 Registrierter Benutzer
Links : Onlinestatus : jogisarge ist offline
Registriert seit: Nov 2002
Beiträge: 430
jogisarge ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hier nochmal die Datensätze
1,137a04e745d4f91bca0057ab0dc32ab9,1
2,137a04e745d4f91bca0057ab0dc32ab9,2
3,137a04e745d4f91bca0057ab0dc32ab9,32
4,137a04e745d4f91bca0057ab0dc32ab9,4
5,137a04e745d4f91bca0057ab0dc32ab9,5
6,137a04e745d4f91bca0057ab0dc32ab9,10

7,227a04e566d4A22baa2257abdf999ab9,2
8,227a04e566d4A22baa2257abdf999ab9,3
9,227a04e566d4A22baa2257abdf999ab9,5
10,227a04e566d4A22baa2257abdf999ab9,4
11,227a04e566d4A22baa2257abdf999ab9,3
12,227a04e566d4A22baa2257abdf999ab9,10


wenn ich mit
PHP-Code:
Select sitzungsnr from table where status != 32 
prüfe, dann bekomme ich im ersten Teil beim ersten Satz gleich einen Treffer.
Das wäre aber falsch, da ja der Satz mit der ID 4 den Status 32 hat.

Ich müsste also Gruppen anhand der Sitzungsnr bilden, und dort dann jeden Satz auf status = 32 prüfen.
Aber das bekomme ich irgendwie nicht als Abfrage gebacken.

d.h. Die Sätze mit der gleichen Sitzungsnr bilden Gruppen.
Und sobald in einer Gruppe ein Satz mit dem status 32 ist, dann ist die ganze Gruppe für mich nicht mehr interressant.
Da ich sie aber später noch benötige, kann ich sie nicht aus der DB löschen.

Gruss
jogi
Mit Zitat antworten
  #8 (permalink)  
Alt 22-03-2005, 23:43
Wurzel
 Master
Links : Onlinestatus : Wurzel ist offline
Registriert seit: Jul 2002
Ort: double-u-upper-valley
Beiträge: 7.477
Wurzel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ist 32 der höchste statuswert?
__________________
Kissolino.com
Mit Zitat antworten
  #9 (permalink)  
Alt 22-03-2005, 23:45
jogisarge
 Registrierter Benutzer
Links : Onlinestatus : jogisarge ist offline
Registriert seit: Nov 2002
Beiträge: 430
jogisarge ist zur Zeit noch ein unbeschriebenes Blatt
Standard

nein,leider nicht.
Die Idee kam mir auch schon.
gruppieren und den Höchstwert prüfen.

Ich habe auch keinen Einfluss auf die Werte.

gruss
jogi
Mit Zitat antworten
  #10 (permalink)  
Alt 23-03-2005, 00:02
Wurzel
 Master
Links : Onlinestatus : Wurzel ist offline
Registriert seit: Jul 2002
Ort: double-u-upper-valley
Beiträge: 7.477
Wurzel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

vorschlag mit 2 abfragen:
mit DISTINCT(sitzungsnummer) auf die 32, dann auf ALLE sitzungsnummern ... zieh die ergebnisarrays voneinander ab => php=>array-fkts
__________________
Kissolino.com
Mit Zitat antworten
  #11 (permalink)  
Alt 23-03-2005, 06:24
derHund
 PHP Master
Links : Onlinestatus : derHund ist offline
Registriert seit: Aug 2003
Ort: Hundehütte
Beiträge: 5.293
derHund ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Code:
SELECT     s1.session_id
FROM       session s1
LEFT JOIN  session s2
ON         s1.session_id = s2.session_id
AND        s2.status = 32
WHERE      s2.id IS NULL
GROUP BY   s1.session_id
probier mal, sollte funktionieren ...
__________________
Die Zeit hat ihre Kinder längst gefressen
Mit Zitat antworten
  #12 (permalink)  
Alt 23-03-2005, 08:12
jogisarge
 Registrierter Benutzer
Links : Onlinestatus : jogisarge ist offline
Registriert seit: Nov 2002
Beiträge: 430
jogisarge ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Vielen Dank !!!

Das scheint zu gehen.
Ich werde das heute abend mal genau ausprobieren.

gruss
jogi
Mit Zitat antworten
Antwort

Lesezeichen


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

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

Microweber CMS

Open source, drag and drop website builder

13.01.2020 Berni | Kategorie: HTML5/ EDITOR
PhoneGap Apps mit JS, CSS3 und HTML5 erstellen ansehen PhoneGap Apps mit JS, CSS3 und HTML5 erstellen

PhoneGap, Framework zur Erstellung hybrider Applikationen für mobile Endgeräte.

13.01.2020 Berni | Kategorie: App-Entwicklung
Bo)Tickets

Bo)Tickets bietet Ihnen eine Schnittstelle für Kundenanfragen an. In dem Script definieren Sie Supportbereiche, also zum Beispiel „Technik, Buchhaltung, Support“. Ihre Kunden können dann über ein Formular eine Anfrage abschicken.

31.12.2019 bocombo | Kategorie: PHP/ Ticketsystem
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:47 Uhr.