|
|
|
|
Also was ich mache ist ja folgendes:
ich suche alle uid aller Posts seit nem Monat. Das ganze Distinct, d.h. als Menge, d.h. jede UID taucht ein mal auf.
Im ersten Subquery hole ich mir zu der uid den namen
Im zweiten will ich noch zusätzlich das count(pid) auf die uid des selben Zeitraums holen. Sprich ich kann kein Join nutzen, da die zu zählenden Datensätze da schon längst weg sind
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von TriggerTG am 20.04.2010 10:20]
|
|
|
|
|
|
Du hast die Users Tabelle geschrottet..
|
|
|
|
|
|
|
Naja, ich widme mich nu lieber mal wieder meiner eigentlichen Arbeit und überlege mir das zu hause nochma in Ruhe
Zur not packe ich das halt in ein seperates Query und jut is
|
|
|
|
|
|
|
Hättest du die users tabelle nicht in eine rekursive Todesschleife geschickt, hätte ich dir den Query schon fertig, aber da geht ja gar nix momentan..
|
|
|
|
|
|
|
| Zitat von TriggerTG
Ich finde hier den Fehler nicht:
|
Code: |
$sqlstmt = 'SELECT DISTINCT
(SELECT username FROM users WHERE users.uid = t1.uid) AS name,
(SELECT count(pid) FROM posts AS t2 WHERE t2.uid = t1.uid AND t2.date >= (NOW() - INTERVAL 1 MONTH)) AS cnter,
FROM
posts AS t1
WHERE
t1.date >= (NOW() - INTERVAL 1 MONTH)'; |
|
| |
Das ganze Statement ist ein Fehler. o_O
SELECT username AS name, COUNT(pid) AS cnter FROM posts LEFT JOIN users ON users.uid = posts.uid WHERE posts.date >= DATE_SUB(NOW(), INTERVAL 1 MONTH) GROUP BY posts.username
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von [Dicope] am 20.04.2010 10:27]
|
|
|
|
|
|
Ups
Wie Achsel schon meinte: Theoretischer Informatiker halt. Ich mag infinity
|
|
|
|
|
|
|
| Zitat von TriggerTG
Ups
Wie Achsel schon meinte: Theoretischer Informatiker halt. Ich mag infinity
| |
Und dann traust du dich, von Endlosschleifen zu reden? Soso.
|
|
|
|
|
|
|
| Zitat von [Dicope]
| Zitat von TriggerTG
Ich finde hier den Fehler nicht:
|
Code: |
$sqlstmt = 'SELECT DISTINCT
(SELECT username FROM users WHERE users.uid = t1.uid) AS name,
(SELECT count(pid) FROM posts AS t2 WHERE t2.uid = t1.uid AND t2.date >= (NOW() - INTERVAL 1 MONTH)) AS cnter,
FROM
posts AS t1
WHERE
t1.date >= (NOW() - INTERVAL 1 MONTH)'; |
|
| |
Das ganze Statement ist ein Fehler. o_O
SELECT username AS name, COUNT(pid) AS cnter FROM posts LEFT JOIN users ON users.uid = posts.uid WHERE posts.date >= DATE_SUB(NOW(), INTERVAL 1 MONTH) GROUP BY posts.username
| |
Oh, tatsache, da war ich wohl zu vernarrt in mein Distinct
|
|
|
|
|
|
|
*Memo an mich*
Wenn ich das nächste mal um Hilfe bei nem Query bitte nicht auf Trigger hören!
|
|
|
|
|
|
|
Da die DB jetzt eh im Arsch ist, ist es eh egal
super Tigga..
|
|
|
|
|
|
|
Ich kann schöne Queries schreiben! Siehe
|
Code: |
$sqlstmt = ' SELECT
(SELECT identifier FROM rights WHERE id = user_right.right_id) as label
FROM
benutzer
JOIN
user_right ON benutzer.idBenutzer = user_right.user_id
WHERE
benutzer.idBenutzer = :id
UNION
SELECT
(SELECT identifier FROM rights WHERE id = group_right.right_id) as label
FROM
benutzer
JOIN
user_group ON benutzer.idBenutzer = user_group.user_id
JOIN
group_right ON user_group.group_id = group_right.group_id
WHERE
benutzer.idBenutzer = :id'; |
|
|
|
|
|
|
|
|
| Zitat von TriggerTG
| Zitat von [Dicope]
| Zitat von TriggerTG
Ich finde hier den Fehler nicht:
|
Code: |
$sqlstmt = 'SELECT DISTINCT
(SELECT username FROM users WHERE users.uid = t1.uid) AS name,
(SELECT count(pid) FROM posts AS t2 WHERE t2.uid = t1.uid AND t2.date >= (NOW() - INTERVAL 1 MONTH)) AS cnter,
FROM
posts AS t1
WHERE
t1.date >= (NOW() - INTERVAL 1 MONTH)'; |
|
| |
Das ganze Statement ist ein Fehler. o_O
SELECT username AS name, COUNT(pid) AS cnter FROM posts LEFT JOIN users ON users.uid = posts.uid WHERE posts.date >= DATE_SUB(NOW(), INTERVAL 1 MONTH) GROUP BY posts.username
| |
Oh, tatsache, da war ich wohl zu vernarrt in mein Distinct
| |
Ihr habt aber während eures Studiums auch schon ne Datenbank-Vorlesung gehabt, oder?
|
|
|
|
|
|
|
| Zitat von TriggerTG
Ich kann schöne Queries schreiben! Siehe
|
Code: |
$sqlstmt = ' SELECT
(SELECT identifier FROM rights WHERE id = user_right.right_id) as label
FROM
benutzer
JOIN
user_right ON benutzer.idBenutzer = user_right.user_id
WHERE
benutzer.idBenutzer = :id
UNION
SELECT
(SELECT identifier FROM rights WHERE id = group_right.right_id) as label
FROM
benutzer
JOIN
user_group ON benutzer.idBenutzer = user_group.user_id
JOIN
group_right ON user_group.group_id = group_right.group_id
WHERE
benutzer.idBenutzer = :id'; |
|
| |
das wird ja immer schlimmer..
|
|
|
|
|
|
|
| Zitat von TriggerTG
Ich kann schöne Queries schreiben! Siehe
|
Code: |
$sqlstmt = ' SELECT
(SELECT identifier FROM rights WHERE id = user_right.right_id) as label
FROM
benutzer
JOIN
user_right ON benutzer.idBenutzer = user_right.user_id
WHERE
benutzer.idBenutzer = :id
UNION
SELECT
(SELECT identifier FROM rights WHERE id = group_right.right_id) as label
FROM
benutzer
JOIN
user_group ON benutzer.idBenutzer = user_group.user_id
JOIN
group_right ON user_group.group_id = group_right.group_id
WHERE
benutzer.idBenutzer = :id'; |
|
| |
Du hast den hier vergessen:
|
|
|
|
|
|
|
Meine Vertiefungsrichtung ist Datenbanken. Ich habe quasi alle Datenbankenvorlesungen besucht.
Allerdings gings da nie wirklich drum Anwendungsnahe Queries zu schreiben. Wenn dann in Form der Theorie Relationaler Datenbanken mithilfe von Kalkülen. Es ging im Zusammenhang relationaler Datenbanken eher um Datenbankimplementierungstechniken und neuere Datenbankrichtungen.
|
|
|
|
|
|
|
| Zitat von TriggerTG
Meine Vertiefungsrichtung ist Datenbanken. Ich habe quasi alle Datenbankenvorlesungen besucht.
Allerdings gings da nie wirklich drum Anwendungsnahe Queries zu schreiben. Wenn dann in Form der Theorie Relationaler Datenbanken mithilfe von Kalkülen. Es ging im Zusammenhang relationaler Datenbanken eher um Datenbankimplementierungstechniken und neuere Datenbankrichtungen.
| |
Das merkt man..
Wobei ich bei theoretischer Informatik eigtl. davon ausging, dass das da ein wenig tiefer behandelt wird..
Hab ja selbst ich als Medien-Informatiker machen müssen..
|
|
|
|
|
|
|
Wobei das ja mit dem Subquery auch eindeutgig gehen muss laut SQL-Standard. Egal ob's nicht schön ist.
|
|
|
|
|
|
|
wenn man den subquery denn richtig macht, geht das auch
|
|
|
|
|
|
|
| Zitat von -Marvin-
[...]
Das merkt man..
Wobei ich bei theoretischer Informatik eigtl. davon ausging, dass das da ein wenig tiefer behandelt wird..
Hab ja selbst ich als Medien-Informatiker machen müssen..
| |
Naja, das Studium gibt ja nur ne grobe Lernrichtung vor. Mit dem Rest muss man sich selbst beschäftigen.
Und dieses Problem und dessen verschiedene Lösungswege sind genau diese Beschäftigung mit den Thema Datenbanken.
|
|
|
|
|
|
|
wobei es für den lerneffekt sicherlich besser wäre, wenn ghandis db sich wieder faengt und ich die verbund-groupby loesung ausprobieren kann
|
|
|
|
|
|
|
WTF! ES SCHNEIT!
|
|
|
|
|
|
|
Das ist Asche
|
|
|
|
|
|
|
| Zitat von Flash_
Das ist Asche
| |
Nein, es schneit wirklich.
|
|
|
|
|
|
|
pics or it didn't happen..
|
|
|
|
|
|
|
|
|
|
|
Hmm, das wetter ist dieses jahr echt merkwuerdig. Oder es war sonst merkwuerdig und nu is normal
|
|
|
|
|
|
|
Der April macht was er will.
|
|
|
|
|
|
|
|
|
|
|
Guten Morgen.
Bei uns regnets. Und ich kann wieder kauen \o/
(zumindest weichen Zopf...)
|
|
|
|
|
|
|
|
|
|
Thema: Gehirnsalat ( wir unter uns ) |