Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

SQL: phpBB abfrage

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
nerd
PostRank 10
PostRank 10
Beiträge: 4023
Registriert: 15.02.2005, 04:02

Beitrag von nerd » 26.04.2007, 07:09

Hallo,

ich will fuer ein ein forum eine abfrage mit folgenden feldern schreiben: monat (monat/jahr), neu registrierte user in diesem monat, neu registrierte spambots in diesem monat.

die spambots und echten user zu unterscheiden ist ja nicht das problem, nur wie bekomme ich diese 3 spalten alle in eine tabelle?

sql user:

Code: Alles auswählen

SELECT
DATE_FORMAT(FROM_UNIXTIME(`site`.`phpbb_users`.`user_regdate`), "%m/%y") AS signup_date,
count(`site`.`phpbb_users`.`user_id`) AS 'User registrations'
FROM
`site`.`phpbb_users`
WHERE
`site`.`phpbb_users`.`user_posts`>0
GROUP BY
signup_date
ORDER BY
`site`.`phpbb_users`.`user_regdate` DESC
LIMIT 0, 30
sql spambots:

Code: Alles auswählen

SELECT
DATE_FORMAT(FROM_UNIXTIME(`site`.`phpbb_users`.`user_regdate`), "%m/%y") AS signup_date,
count(`site`.`phpbb_users`.`user_id`) AS 'Spambot registrations'
FROM
`site`.`phpbb_users`
WHERE
`site`.`phpbb_users`.`user_website` !=""
AND `site`.`phpbb_users`.`user_posts` = 0
GROUP BY
signup_date
ORDER BY
`site`.`phpbb_users`.`user_regdate` DESC
LIMIT 0, 30
mit union komme ich irgendwie auch nicht richtig weiter, db ist mysql 4.1 ....

(jaja, das ergebniss ist nicht 100% genau, aber das forum ist ziehmlich gross und mit der fehlerquote kann ich da leben)

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


d0nut
PostRank 5
PostRank 5
Beiträge: 201
Registriert: 19.08.2004, 10:35
Wohnort: Nidderau

Beitrag von d0nut » 26.04.2007, 19:07

Ich würde es schon mit UNION machen. Voraussetzung ist, dass alle Spaltennamen gleich sind.

Statt User registrations und Spambot registrations benutzt du also nur registrations.
Und zur Unterscheidung machst du dir einfach eine Pseudospalte

SELECT 1 AS istEsSpam, DATE_FORMAT(FRO..... und
SELECT 0 AS istEsSpam
https://www.easy-coding.de | Das Coder Forum

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag