"SELECT bla FROM tabelle WHERE bedingung=0 AND bedingung=0"
untested
untested
Zur Unterhaltung einer Party trägt niemand so viel bei wie diejenigen, die gar nicht da sind.
Audrey Hepburn, Schauspielerin
Don't use thx-sry-plz
Audrey Hepburn, Schauspielerin
Don't use thx-sry-plz
kann nicht gehen 
Die Sqlsyntax auf Deutsch:
LESE bla VON DER TABELLE xy AUS WO bedigung='1' UND bedingung='2'
Da kommt garantiert kein Result
Es geht darum das ich 2 WHERECLAUSES habe, die die Bedingung nicht erfüllen können, eigentlich müsste man 2 Abfragen machen, ich will es aber in einer abfrage. Desshalb müsste es mit UNION gehen, aber das will irgendwie auch nicht.

Die Sqlsyntax auf Deutsch:
LESE bla VON DER TABELLE xy AUS WO bedigung='1' UND bedingung='2'
Da kommt garantiert kein Result
Es geht darum das ich 2 WHERECLAUSES habe, die die Bedingung nicht erfüllen können, eigentlich müsste man 2 Abfragen machen, ich will es aber in einer abfrage. Desshalb müsste es mit UNION gehen, aber das will irgendwie auch nicht.
Zitat
Original von maxtpayne
@Marty du brauchst kein Group by da du im SELECT nur die Agregatsfunktion hast und nicht noch ne spalte selectierst die du ausgeben willst
Er will aber doch als Ergebnis folgendes haben:
Bedingung 1: 10 mal
Bedingung 2: 15 mal
wie soll das ohne group by gehen? Von mir aus vorne beim select noch ein "Bedingung" dabei und fertig.
Gruss
Marty
Ich hab' noch ein Problem(und will dafür keinen neuen Thread aufmachen):
Da ist das Prob. das er mein künstliches Feld unbest nicht anerkennt.
Kann mir jemand helfen???
Danke
s.o.
Edit: Hat sich geklährt
|
|
PHP-Quelltext |
1 2 3 4 5 6 7 8 9 10 11 12 13 |
SELECT mt_user.user, count( mt_bekommen.user ) AS `unbest`
FROM mt_user, `mt_bekommen`
WHERE (
mailsamtag > bekommen OR heutedatum != ' 020505'
) AND free = '1' AND sperre = '1' AND inaktiv = '0' AND urlaub < '1115061750' AND sponsor = '0' AND lastaction > ( '1115061750' - '263520' ) AND (
mt_bekommen.user = mt_user.user
) AND mt_bekommen.best = '1' AND `unbest` <20
GROUP BY mt_user.user
ORDER BY unbest
LIMIT 0 , 30
MySQL meldet:
#1054 - Unknown column 'unbest' in 'where clause'
|
Da ist das Prob. das er mein künstliches Feld unbest nicht anerkennt.
Kann mir jemand helfen???
Danke
s.o.
Edit: Hat sich geklährt
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »s.o.« (3. Mai 2005, 15:54)
Zitat
Original von MartyMcFly
Zitat
Original von maxtpayne
@Marty du brauchst kein Group by da du im SELECT nur die Agregatsfunktion hast und nicht noch ne spalte selectierst die du ausgeben willst
Er will aber doch als Ergebnis folgendes haben:
Bedingung 1: 10 mal
Bedingung 2: 15 mal
wie soll das ohne group by gehen? Von mir aus vorne beim select noch ein "Bedingung" dabei und fertig.
Gruss
Marty
Wenn der das so will ist das falsch denn du bekommst nur die count(spalte1) ausgeben. group by muss man nur verwenden wenn man z.B.
SELECT count(spalte1), spalte2
FROM tabelle
WHERE BEDINGUNGEN
GROUP BY spalte2;
macht. Sprich also auch spalte2 ausgegeben haben will. Jedenfalls bekommst du nicht die Ausgabe die du angesprochen hast.
Jedenfalls hab ich das so gelernt

Greetz
MaxTPayne
Hallo,
noch ein Problem:
In der Mailhistorytabelle meines Mailtausches möchte ich in deiner Abfrage folgendes auslesen:
Nun ist aber das Problem, dass bestätigt dadurch definiert ist, dass best=1 ist und unbestätigt daduch, dass best=0 ist. Das muss aber alles in Zeile, und da es mehrere User in der Tabelle gibt, die auch manchmal doppelt vorkommen.
Die Ausgabe stelle ich mir so vor:
Kann mir jemand helfen?
noch ein Problem:
In der Mailhistorytabelle meines Mailtausches möchte ich in deiner Abfrage folgendes auslesen:
|
|
Quellcode |
1 |
User, empfagen, bestätigt[best=1], unbestätigt[best=0] |
Nun ist aber das Problem, dass bestätigt dadurch definiert ist, dass best=1 ist und unbestätigt daduch, dass best=0 ist. Das muss aber alles in Zeile, und da es mehrere User in der Tabelle gibt, die auch manchmal doppelt vorkommen.
Die Ausgabe stelle ich mir so vor:
|
|
Quellcode |
1 2 3 4 |
User, empfagen, bestätigt[best=1], unbestätigt[best=0] a,10,9,1 b,22,20,2 ...(usw.) |
Kann mir jemand helfen?
Hallo,
probier mal
Das sollte Dir den User, die Gesamtzahl an Mails für den User und die Anzahl der bestätigten liefern. Die unbestätigten kannst Du dann ja simpel errechnen mit gesamt-bestätigt.
Gruss
Marty
probier mal
Zitat
SELECT mails.user, Count(mails.user) AS Gesamt, Sum(mails.best) AS bestätigt
FROM mails
GROUP BY mails.user;
Das sollte Dir den User, die Gesamtzahl an Mails für den User und die Anzahl der bestätigten liefern. Die unbestätigten kannst Du dann ja simpel errechnen mit gesamt-bestätigt.
Gruss
Marty


